Собсно столкнулся с немного странной проблемой при использовании термкапа: при попытке использования каких либо команд тот падает лицом в асфальт, выдавая ошибку сегментации. Поначалу грешил на свой код, но в результате тестов, оказалось, что сегфолтит даже простейший мейник вида:
int main(void)
{
struct termios term, cur_term;
int width;
tcgetattr(0, &term);
cur_term = term;
cur_term.c_lflag &= (unsigned long)~(ICANON | ECHO | ECHONL);
tcsetattr(0, TCSANOW, &cur_term);
width = tgetnum("co");
printf("%d\n", width);
tcsetattr(0, TCSANOW, &term);
}
tgetnum
, но точно такой же результат возникнет и при вызове любой другой функции из библиотеки. Тестировал в termite, urxvt и xterm. Сам termcap установлен из AUR.Тот же код вполне адекватно работает под убунтой и макосью. ЧЯДНТ?