Как я могу кросс-компилировать свое приложение Linux, чтобы получить исполняемый файл Windows в Linux? - PullRequest
6 голосов
/ 26 июня 2009

Мне нужно сделать кросс-компиляцию моего приложения QT в Linux. Я скомпилировал свое приложение из QT SDK в Linux, и оно работает нормально.
Как мне создать .exe для того же приложения в Linux. Я установил Mingw в Linux и qmake, но я не знаю, как продолжить кросс-компиляцию.
Как связать мой QT с кросс-компилятором, таким как MinGW и Qmake. Я использую SuSE Linux. Я также прошел через http://Silmore/29, но у меня нет четкого представления о том, как действовать дальше.

Ответы [ 3 ]

3 голосов
/ 26 июня 2009

Я не знаком с SuSE, но в Ubuntu есть пакеты mingw32, которые являются кросс-компилятором для Windows, вместе с открытым исходным кодом win32api:

alt text
(источник: liranuna.com )

После небольшого поиска выясняется, что RPM для него есть здесь , хотя он, вероятно, должен быть в ваших хранилищах.

0 голосов
/ 26 июня 2009

Вы можете запустить Visual C ++ Express Edition 2008 cl.exe через wine для компиляции вашего проекта.

0 голосов
/ 26 июня 2009

По сути, вы используете вашу кросс-цепочку для процесса Make, а не host-цепочку. Я предполагаю, что нет сценария настройки автоинструментов. Если есть, вы можете запустить configure с указанным параметром --host и все выяснить.

Итак, вам нужно установить CC, LD, CFLAGs, LDFLAGS (возможно, также CXX и CXXFLAGS) и изменить Makefile для использования правильных библиотек QT - которые должны быть mingw, а не вашими библиотеками Linux. Поэтому вам также может понадобиться получить MinGW / Windows QT SDK и сохранить его отдельно, чтобы ваши пути могли быть указаны правильно.

Надеюсь, это поможет!

...