Версия для печати
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум на Исходниках.RU > Кроссплатформенный C/C++: cl/gcc/Qt/Gtk+/WxWidgets > Сборка Qt 64 под Windows


Автор: rodion 28.08.17, 13:39
Здравствуйте. Пытаюсь собрать qt 5.8.0 на win7x64 под компилятор mingw64 7.1.0 в 64 битном режиме.
За основу взял эту статью. https://habrahabr.ru/post/198142/
В соответствии с ней скопировал mkspec win32-g++ в win64x-g++ и отредактировал qmake.conf.
Компилирую батником следующего содержания


SET QTDIR=C:\Qt\5.8.0
SET QMAKESPEC=C:\Qt\5.8.0\qtbase\mkspecs\win64x-g++
configure -prefix "C:\Qt\5.8.0" -opensource -release -nomake examples -nomake demos -nomake tools -nomake docs -platform win64x-g++ -opengl desktop

на данный момент получаю сообщение о не возможности найти make. ( в mingw64 mingw32-make.exe) не подскажите в чём может быть дело?
qmake.conf (, : 192)

Автор: JoeUser 28.08.17, 15:11
Цитата rodion @
не подскажите в чём может быть дело

Вангую - в отсутствии нужных путей к исполняемым файлам. И это только самое самое начало ... :lol:

Сам когда-то пытался заниматься подобным садо-мазо. Неблагодарное это дело. Но есть выход:

1) Ставим Linux Manjaro (крайне желательно вариант с xfce4) либо вживую на комп, либо под VMWare. Ставится не сложнее винды.
2) Если ставим под вмварю - в линухе ставим пакет open-vm-tools что-бы получить все прелести копипасты и авторесайза десктопа под окно
3) Заходим на сайт http://mxe.cc и доставляем в линухе нужные пакеты из списка на том же сайте
4) Создаем рабочий каталог типа mkdir -p /home/user/dev/cross
5) Забираем git clone https://github.com/mxe/mxe.git
6) Переходим cd mxe
7) Примерно часов 12-18 собираем Qt5 и сопутствующее - под 8 целей - Win32/64/shared/static/win/posix:
<{CODE_COLLAPSE_OFF}><{CODE_WRAP_OFF}>
    make MXE_TARGETS='i686-w64-mingw32.shared i686-w64-mingw32.static x86_64-w64-mingw32.static x86_64-w64-mingw32.shared i686-w64-mingw32.shared.posix i686-w64-mingw32.static.posix x86_64-w64-mingw32.static.posix x86_64-w64-mingw32.shared.posix' xz postgresql libmysqlclient luajit qt5 -j2 JOBS=2

Позднее "вкус придет во время еды" - все либы, которые можно собрать, можно посмотреть в каталоге mxe/src/ и дособрать тем же макаром.

В результате получаем 8 наборов туллчейнов, где бинарники (компиляторы и бинутиль) будут лежать в mxe/usr/bin, а либы разложены по соседним каталогам, о которых собранные туллчейны уже знают

8) С сайта скачиваем бинарный инсталлятор под линух x64 - qt5, инсталлим, запускаем QtCreator и создаем в нем 8 комплектов для собранного из п.7

ЗЫ: Для ускорения разработки под линух - есть смысл поставить clang из пакетов, valgrind - для контроя memory leak, ну и поискать парочку статических анализаторов, в линухе выбор есть. А ... еще, неплохо поискать стилизатор форматирования кода и подключить его в QtCreator.

Занавес. :blush:

Автор: rodion 28.08.17, 17:12
Пути все есть, под win32 собралось без вопросов.
Ваш вариант, как я понял, исключает отладку под виндоус.

Автор: JoeUser 28.08.17, 18:50
Цитата rodion @
Ваш вариант, как я понял, исключает отладку под виндоус.

Да. Коль речь идет о кроссплатформенном приложении - везде должно работать одинаково.

Автор: rodion 29.08.17, 06:11
Буду думать. Есть некоторые сложности с VMWare...

Автор: JoeUser 29.08.17, 14:35
Цитата rodion @
Есть некоторые сложности с VMWare...

Для гостевого линуха хватит 2Гб памяти. Остальное все решаемо. Спрашивай.
Скрытый текст
One.png (, : 1181)
Two.png (, : 1188)

Правда на скринах Funtoo Linux, но не суть.

Автор: rodion 23.09.17, 09:12
Попробовал поставить Linux Manjaro с xfce4 под VMWare не вышло.
После загрузки линукса получаю только чёрный эран.

Автор: JoeUser 23.09.17, 15:42
Цитата rodion @
Попробовал поставить Linux Manjaro с xfce4

Откуда и какой установочный образ качал?

Автор: rodion 24.09.17, 06:12
сейчас не вспомню качал месяц назад. Что то типа первая строка в гугле. VMWar 7

Автор: JoeUser 24.09.17, 07:43
Надо было отсюда https://manjaro.org/get-manjaro/

Автор: rodion 25.09.17, 16:14
При загрузке я получил картинку которая в отличается от той что в руководстве. И куда нажимать для инсталляции не понятно
error.jpg (, : 1203)

Автор: JoeUser 25.09.17, 16:19
Два раза "стрелку вниз", потом клавишу "энтер".

Добавлено
Add: Только виртуальную машину лучше создать как "Other Linux 3.x kernel".

Автор: rodion 25.09.17, 17:06
Other Linux 3.x kernel в меню моей VMWare нет. Этот пункт меню я тоже опробовал сначала бегут стандартные океи а потом чёрный экран. Может попробовать более новую VMWare?

Автор: JoeUser 16.10.17, 17:42
Я 12-ю версию юзаю - все норм в ней.

Powered by Invision Power Board (https://www.invisionboard.com)
© Invision Power Services (https://www.invisionpower.com)