Freeze 0 15 января, 2009 Опубликовано 15 января, 2009 · Жалоба Здравствуйте. Пишу программу на C++. Интерфейс у нее должен быть консольный. Я решил использовать в своих разработках библиотеку Turbo Vision. (кому интересно - вот адрес) . В общем, она не хочет компилировать даже свои собственные примеры. Когда я прописываю строчку, к примеру fpstream *Strm = new fpstream(fileName, CLY_IOSIn); она мне выдает кучу линкер ерроров [Linker error] undefined reference to `std::__basic_file<char>::sys_open(int, std::_Ios_Openmode, bool)' [Linker error] undefined reference to `std::basic_filebuf<char, std::char_traits<char> >::seekoff(long, std::_Ios_Seekdir, std::_Ios_Openmode)' [Linker error] undefined reference to `std::basic_filebuf<char, std::char_traits<char> >::uflow()' В связи в этим несколько вопросов. Зачем он в винде ищет sys_open() и подобные вещи? Как объяснить этой библиотеке, что у нас Win32 и попросту не может быть подобных функций? (ну или как ему их подсунуть?) В гугле меня, видимо, забанили, ибо ничего путного не выдает. Из документации нашел только мануал по старому борландовскому турбо вижн, работа с которым в целом практически идентична работе с этой библиотекой. Если слишком сложно, то подскажите, как еще можно сделать TUI под вин, чтоб ее потом без особых проблем перенести на lin? Спасибо за внимание. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
amw 0 16 января, 2009 Опубликовано 16 января, 2009 · Жалоба Здравствуйте. Пишу программу на C++. Интерфейс у нее должен быть консольный. Я решил использовать в своих разработках библиотеку Turbo Vision. (кому интересно - вот адрес) . В общем, она не хочет компилировать даже свои собственные примеры. Когда я прописываю строчку, к примеру fpstream *Strm = new fpstream(fileName, CLY_IOSIn); она мне выдает кучу линкер ерроров В связи в этим несколько вопросов. Зачем он в винде ищет sys_open() и подобные вещи? Как объяснить этой библиотеке, что у нас Win32 и попросту не может быть подобных функций? (ну или как ему их подсунуть?) В гугле меня, видимо, забанили, ибо ничего путного не выдает. Из документации нашел только мануал по старому борландовскому турбо вижн, работа с которым в целом практически идентична работе с этой библиотекой. Если слишком сложно, то подскажите, как еще можно сделать TUI под вин, чтоб ее потом без особых проблем перенести на lin? Спасибо за внимание. Этот TV не пробовал, но типа наводящие вопросы. Вот тут http://tvision.sourceforge.net/ написано в частности For Win32 you can use BC++ 5.5, Cygwin, MinGW or MSVC. Вы чем компилируете? GCC? Тогда у Вас нехватает девелопмент пакетов от cygwin/mingw. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Freeze 0 16 января, 2009 Опубликовано 16 января, 2009 · Жалоба В общем - установил пакеты binutils, gcc-core, gcc-g++, GNU Debugger, GNU Make, MinGW runtime, Windows32 API. Толку нет. Подключал всякие библиотеки (в смысле - .a и .lib). Пока с мертвой точки не сдвинулся. Все так же на эту строчку выдает undefined reference. Может, какие не те библиотеки подключаю? если есть кто знающий - ответьте пожалуйса. А может, кто-то уже разрабатывал TUI и сможет мне посоветовать какую другую библиотеку для этого действа? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
xvr 12 16 января, 2009 Опубликовано 16 января, 2009 · Жалоба Здравствуйте. Пишу программу на C++. Интерфейс у нее должен быть консольный. Я решил использовать в своих разработках библиотеку Turbo Vision. (кому интересно - вот адрес) . В общем, она не хочет компилировать даже свои собственные примеры. Когда я прописываю строчку, к примеру fpstream *Strm = new fpstream(fileName, CLY_IOSIn); она мне выдает кучу линкер ерроров [Linker error] undefined reference to `std::__basic_file<char>::sys_open(int, std::_Ios_Openmode, bool)' [Linker error] undefined reference to `std::basic_filebuf<char, std::char_traits<char> >::seekoff(long, std::_Ios_Seekdir, std::_Ios_Openmode)' [Linker error] undefined reference to `std::basic_filebuf<char, std::char_traits<char> >::uflow()' В связи в этим несколько вопросов. Зачем он в винде ищет sys_open() и подобные вещи? Как объяснить этой библиотеке, что у нас Win32 и попросту не может быть подобных функций? (ну или как ему их подсунуть?) У вас как то подцепились stream функции из стандартной библиотеки C++. Они не относятся к Linux'у, и вполне имеют право быть и в Винде. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Freeze 0 16 января, 2009 Опубликовано 16 января, 2009 · Жалоба А где их искать? Раз они стандартные, значит - в каком-то хедере должны быть. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Harbour 0 17 января, 2009 Опубликовано 17 января, 2009 · Жалоба -lstdc++ -lsupc++ Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Freeze 0 19 января, 2009 Опубликовано 19 января, 2009 · Жалоба libstdc++ и libsupc++ не помогают. Все осталось, как и было. Может, кто знает другую библиотеку для создания tui? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_pv 52 19 января, 2009 Опубликовано 19 января, 2009 · Жалоба Может, кто знает другую библиотеку для создания tui? ncurses Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Harbour 0 20 января, 2009 Опубликовано 20 января, 2009 · Жалоба libstdc++ и libsupc++ не помогают. Все осталось, как и было. Может, кто знает другую библиотеку для создания tui? Если осталось как было - значит либы не подключены : .................. [Dao]:rus:~ # nm -C /usr/lib/libstdc++.a |grep sys_op 5127:00000000 T std::__basic_file<char>::sys_open(_IO_FILE*, std::_Ios_Openmode) 5128:00000000 T std::__basic_file<char>::sys_open(int, std::_Ios_Openmode) .................. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Freeze 0 30 января, 2009 Опубликовано 30 января, 2009 · Жалоба спасибо за совет про ncurses. сделал проект на pdcurses (я так понял, они похожи). только одна проблема. программа не хочет воспринимать некоторые символы кириллицы, набранные с клавиатуры (например "а" и "Ф"). кто-нибудь знает, как с этим бороться? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться