Добрый день!
Я прочитал закрытую тему про QNX 6.5 и ncurses-5.9 (
http://ftp://ftp.gnu.org/pub/gnu/ncurses/), в которой обсуждалось, как сделать так, чтобы русский текст выводился через ncurses.
В моём случае проблема в деталях такая: использую функции printw() и mvprintv(). Т.к. mvprintw() периодически глючит с положением текста на экране, использую комбинацию move(x,y) и printw(). При попытке вывести строку символов ( char* или char[] ) выводится только первая русская буква(удивительно, что она всё ж выводится), после чего больше никакие не выводятся, в том числе и латинница.
Там говорилось, что где-то в паре мест нужно убрать проверку isprint. Сможет кто-нибудь уточнить, где от этой проверки нужно отказаться? Дело в том, что этих проверок там, судя по " grep isprint * " , оказалось достаточно много.
Пробовал различные варианты ./configure ......
В том числе
./configure --enable-bsdpad --enable-overwrite --with-cxx-binding --without-ada --without-gpm --with-manpage-format=normal --with-manpage-tbl
Добился, чтобы он проходил до конца.
Запустил make install.data
Не с первого раза, но это действие всё-таки прошло.
То ли ./configure, то ли make install.data сначала не проходил до конца, ссылаясь на то, что не может создать папку в директории /tmp.
Оказалось, что в моём случае, /tmp была не совсем папка, это была симв. ссылка (-> /dev/shmem ). После того, как я вручную создал папку /tmp, всё сработало.
Однако на этапе сборки (make) появляется ошибка:
./demo_terminfo.c:271: undefined reference to 'use_external_names'
Закомментировал это место в коде, затем такая же ошибка появилась для другой переменной, и я перестал пытаться что-то исправлять.
Помогите разобраться, как правильно исправить код (убрать ненужные isprint проверки) и как правильно собрать ncurses.
Насколько я понял из описаний, последовательность действий такая:
# ./configure <параметры>
# make install.data
# make
В некоторых статьях написано, что подобная проблема решается использованием ncursesw. В QNX6.5.0 есть только ncurses. Есть ли смысл пытаться собирать ncursesw и как это сделать при необходимости?
И ещё один вопрос. Что нужно делать, когда сборка всё-таки завершится удачно? Какие файлы и куда необходимо поместить?