2012-03-31 1 views
0
#include <FL/Fl.H> 
#include <FL/Fl_Window.H> 

int main() { 
    Fl_Window win(400, 400); 
    win.show(); 
    return Fl::run(); 
} 

Я компилирую с помощью "fltk-config --compile main.cpp". Код компилируется без инцидентов, но когда приложение запускается, я получаю только консольное окно и графический интерфейс.Приложения FLTK в Cygwin: GUI не отображается?

Я также пробовал использовать жидкость из терминала (через «жидкость main.cpp»); Я даже не уверен, что правильно использую это, потому что, как я понимаю, жидкость - графический редактор. В любом случае результатом является «Невозможно открыть отображение:». Я нашел ту же ошибку, но для другой ситуации here. Кто-то в этой теме предложил сделать «export DISPLAY =: 0.0», который я попробовал. Теперь при использовании жидкости ошибка просто изменилась на «Не удается открыть дисплей:: 0.0».

Стоит отметить, что я также попытался использовать Qt4 в качестве фреймворка (используя qmake/make для компиляции), но у меня есть такая же проблема. Консольные нагрузки, никакой графический интерфейс любого типа, несмотря на использование кода, который, по мнению различных источников, должен работать.

Редактировать вопрос. Я использовал DependencyWalker для поиска DLL-файлов, используемых моим .exe, и помещал их .dll прямо в папку проекта. Это не повлияло на мою проблему или каким-либо образом изменило ее. Для справки, я использовал библиотек .dll были: cygfontconfig-1, cyggcc_s-1, cygstdC++ - 6, cygwin1, cygX11-6, cygXft-2, kernel32.

Я также пробовал то же самое решение для Qt, но без успеха. В этом случае были библиотек .dll cygwin1, cyggcc_s-1, cygstdC++ - 6, cygqtcore-4, cygqtgui-4, kernel32.

Для некоторых хороших новостей я нашел, что может успешно создать приложение с SDK Qt Creater, поэтому проблема лежит где-то только с моими ручными компиляциями. В любом случае, я все равно хотел бы решить эту проблему. Мне не нравится использование SDK для небольших проектов, и я бы хотел, чтобы мои возможности библиотеки открывались.

ответ

1

Если fltk-config --cxxflags и fltk-config --ldflags не выводят -mno-cygwin, то ваш FLTK был скомпилирован для работы с системой X Window системы Cygwin - чего-то, чего вы, вероятно, не захотите избежать. Добавьте -mno-cygwin в свой файл Makefile и ваше приложение FLTK.

Мне всегда нравились MinGW + MSYS.

 Смежные вопросы

  • Нет связанных вопросов^_^