Можно попробовать сменить терминал, например на linux или 386at
export TERM=linux
или
export TERM=386at
Наличие этих терминалов можно проверить в /usr/lib/terminfo
Если они остутствуют, то их можно установить из любой версии ncurses командой
make install.data
Ага, спасибо.
export TERM=386at
Помог. Но пришлось слегка исхитриться. К сожалению, если сделать постоянный
export TERM=386at, не для приложения, а, например, прописать в rc.local или еще где-нибудь, то mqc и med перестают работать нормально. Поэтому пришлось включать и выключать данный тип терминала в самом приложении.
Вначале функции main запоминаю исходный терминал следующим образом:
const char* old_term_name = getenv("TERM");
Затем выставляю нужный мне терминал с помощью функции setenv:
int res_func = setenv("TERM", "386at", 1);
// далее, проверка результата функции
А в конце функции main возвращаю исходный терминал:
res_func = setenv("TERM", old_term_name, 1);
// далее, проверка результата функции
При таком подходе все сработало. Спасибо за помощь!