У меня было самое трудное время, пытаясь скомпилировать .pro файл в Linux для создания исполняемого файла окон. Я прочитал все ссылки в мире при использовании mingw, и ничто не работало на данный момент. Есть ли что-то, что я пропускаю, или у кого-либо есть действительно хорошее шаг за шагом о том, как сделать это?
Ubuntu 14.04.2 QT 4.8
Следующие шаги взяты из ответа на сообщении на переполнении стека для создания с qt4, если это работает, удостоверяются, что дали им upvote.
Просто используйте перекрестную среду M (MXE). Это вынимает боль из целого процесса:
Получите его:
git clone https://github.com/mxe/mxe.git
Создайте QT для Windows, его зависимостей и инструментов перекрестной сборки; это займет приблизительно час на быстрой машине с достойным доступом в Интернет; загрузка составляет приблизительно 500 МБ:
cd mxe && make qt
Перейдите к каталогу своего приложения и добавьте инструменты перекрестной сборки к переменной окружения PATH:
export PATH=<mxe root>/usr/bin:$PATH
Работайте спокойный инструмент генератора Make-файла затем создайте:
<mxe root>/usr/i686-pc-mingw32/qt/bin/qmake && make
Необходимо найти двоичный файл в./выпускал каталогах:
wine release/foo.exe
Некоторые примечания:
Используйте основное ответвление репозитория MXE; это, кажется, получает намного больше любви от группы разработчиков.
Вывод является 32-разрядным статическим двоичным файлом, который будет работать хорошо над 64-разрядным Windows.
Следующие шаги взяты из ответа на сообщении на переполнении стека для создания с qt5, если это работает, удостоверяются, что дали им upvote.
Вот полные инструкции:
Получите его:
git clone https://github.com/mxe/mxe.git
Qt 5 сборки для Windows:
cd mxe && make qtbase
Это сначала создаст его зависимости и инструменты перекрестной сборки; должно потребоваться меньше чем час на быстрой машине с достойным доступом в Интернет.
Из-за новой модульной природы Qt 5, различные главные спокойные компоненты находятся теперь в другом tarballs. Тот, выбранный выше, qtbase, должен дать Вам достаточно функциональности для запущения обычных приложений GUI, который является всем, в чем я нуждался для своего собственного (небольшого) приложения.
Если Вы захотите создать весь Qt 5 то вместо этого, необходимо будет работать, делают qt5 (вместо, делают qtbase). Обратите внимание, что это возьмет намного дольше для завершения, так будет уверено, что Вам нужна дополнительная функциональность.
Доберитесь до каталога своего приложения и выполните спокойный инструмент генератора Make-файла:
<mxe root>/usr/bin/i686-w64-mingw32.static-qmake-qt5
Разработайте свой проект:
make
Необходимо найти двоичный файл в./выпускал каталогах:
wine release/foo.exe
Некоторые примечания:
Это было протестировано на моем 64-разрядном Debian 8, и в Windows, конечно.
Вывод является 32-разрядным статическим исполняемым файлом, который будет работать хорошо над 64-разрядным Windows.
Если Вы хотите 64-разрядный исполняемый файл, создаете QT с:
make MXE_TARGETS=x86_64-w64-mingw32.static qtbase
Значение MXE_TARGETS по умолчанию является i686-w64-mingw32.static.