Russian Qt Forum

Qt => Установка, сборка, отладка, тестирование => Тема начата: ЙадоФитый ПлюсЧ от Август 05, 2016, 09:33



Название: Qt 5.7 статическая сборка с MySQL и OpenSSL для начала в MinGW32
Отправлено: ЙадоФитый ПлюсЧ от Август 05, 2016, 09:33
Добрый день.
Нужна статическая сборка Qt 5.7

Версию 5.6 собирал так
Код
Bash
configure.bat -static -debug-and-release -platform win32-g++ -prefix " E:\Qt\5.7\minigw_5.3.0_static" \
-opensource -confirm-license -nomake examples -nomake tests -make tools -qml-debug -opengl es2 -no-angle -make libs \
-qt-pcre -qt-libpng  -qt-libjpeg -qt-zlib -qt-freetype -fontconfig -qt-sql-sqlite -qt-sql-odbc -qt-sql-mysql \
-I "c:\Program Files (x86)\MySQL\MySQL Connector.C 6.1\include"  -L "c:\Program Files (x86)\MySQL\MySQL Connector.C 6.1\lib" -l libmysql
На всякий случай предварительно собрав плагин mysql.
В Pro-файл прописывл
Код:
QMAKE_LFLAGS_RELEASE += -static -static-libgcc
Все работало. Вот только в каталог bin установленной сборки приходилось докидывать libmysql.dll. А так же помещать этот файл в каталог с exe-шником.
Хотелось бы на выходе получать полностью самодостаточный exe-шник.

Попытка подсунуть mysqlclient.lib приводила к ошибке сборки.

Как сделать правильно сборку статичную сборку с интегрированными библиотеками mysql и openssl?

Еще такой вопрос. Сам я не местный являюсь пользователем Windows и, поэтому,  не пишу платформозависимые программы. Но другу нужны для работы следующие модули  QAxScriptManager, QAxScript и QAxScriptEngin. Насколько я знаю. они доступны только в коммерческой версии?
Проверить я не могу, так как на доступном ПК с винндой нет собранной Qt.

Так же ради познания собираю шаред-версию Qt
Код
Bash
.\configure.bat -shared -debug-and-release -platform win32-g++ -c++std c++11 -prefix " E:\Qt\5.7\minigw_5.3.0_dinamic" -opensource \
-confirm-license -make examples -make tests -make tools -qml-debug -opengl desktop -make libs -qt-pcre -qt-libpng  -qt-libjpeg -qt-zlib -qt-freetype \
-fontconfig -plugin-sql-sqlite -plugin-sql-odbc -plugin-sql-db2 -plugin-sql-mysql -openssl -I "C:\MySQL-Win32\Connector-C\include" \
-I "C:\OpenSSL-Win32\include\" -L "C:\MySQL-Win32\Connector-C\lib" -l libmysql
Тут я не допустил ошибку? Просто пока собирается, а мне не хочется терять время впустую.


Название: Re: Qt 5.7 статическая сборка с MySQL и OpenSSL для начала в MinGW32
Отправлено: qate от Август 05, 2016, 11:10
Просто пока собирается, а мне не хочется терять время впустую.

даладна

делать я не хочу, проверьте сами у кого там есть венда, а мне лень, лучше я тут попишу )


Название: Re: Qt 5.7 статическая сборка с MySQL и OpenSSL для начала в MinGW32
Отправлено: ЙадоФитый ПлюсЧ от Август 05, 2016, 12:12
Просто пока собирается, а мне не хочется терять время впустую.

даладна

делать я не хочу, проверьте сами у кого там есть венда, а мне лень, лучше я тут попишу )

Я просил не "проверить, у кого есть винда", а подсказать, не накосячил ли я в параметрах. (Ну понятное дело, что пути чисто мои). Почему-то я глубоко уверен, что на этом форуме, я далеко не первый, кто пытается сам собрать Qt.

На ПК где я сейчас собираю Qt. Версия 5.6 собиралась более 30 часов. Там и без моих упражнений процессор загружен под завязку. Сами понимаете, нет желания ждать столько времени, чтобы сборка вылетела с ошибкой.


Название: Re: Qt 5.7 статическая сборка с MySQL и OpenSSL для начала в MinGW32
Отправлено: qate от Август 05, 2016, 13:10
Я просил не "проверить, у кого есть винда", а подсказать, не накосячил ли я в параметрах. (Ну понятное дело, что пути чисто мои). Почему-то я глубоко уверен, что на этом форуме, я далеко не первый, кто пытается сам собрать Qt.

На ПК где я сейчас собираю Qt. Версия 5.6 собиралась более 30 часов. Там и без моих упражнений процессор загружен под завязку. Сами понимаете, нет желания ждать столько времени, чтобы сборка вылетела с ошибкой.

статику редко кто собирает, ибо смысла нет и нарушение лицензии lgpl

что за комп такой что 30 часов собирать ? 20 мин на corei7

очевидно что примеры, тесты и webkit собирать не нужно


Название: Re: Qt 5.7 статическая сборка с MySQL и OpenSSL для начала в MinGW32
Отправлено: Racheengel от Август 05, 2016, 16:07
что за комп такой что 30 часов собирать ? 20 мин на corei7

Intel Xeon, 4 ядра по 2 ггц, собирал базовый конфиг (дебаг-релиз) Qt 5.6.1 13-й Студией примерно по 5 часов 32 и 64-битную версию.

Откуда 20 мин?



Название: Re: Qt 5.7 статическая сборка с MySQL и OpenSSL для начала в MinGW32
Отправлено: qate от Август 05, 2016, 16:49
примеры и тесты и всякий web не собираю

конфиг:

$src/configure -v -confirm-license -opensource  -qt-xcb -qt-zlib -qt-pcre \
-skip webengine -skip websockets -skip webchannel -no-dbus \
-no-compile-examples -nomake examples -qt-zlib -qt-libpng -qt-libjpeg -openssl-linked -no-qml-debug -release -force-debug-info -separate-debug-info -qt-freetype -v \
--prefix=$pr 2>&1 | tee conf_run_log560_64bit

сборка:

make -j 4 | tee make_log_64bit

итого 20 мин в _виртуалке_ собирается

это 5.6, а 5.7 еще не собирал, т.к. пока не собираюсь переходить, возможно там изза с++хх будет дольше


Название: Re: Qt 5.7 статическая сборка с MySQL и OpenSSL для начала в MinGW32
Отправлено: __Heaven__ от Август 08, 2016, 09:18
Подтверждаю. Сборка меньше часа идёт. На mingw64.
Xenon E5


Название: Re: Qt 5.7 статическая сборка с MySQL и OpenSSL для начала в MinGW32
Отправлено: __Heaven__ от Август 08, 2016, 09:24
make -j 4 | tee make_log_64bit
В чём профит такого написания?
Сам я пишу
Код:
make -j 4 > make.log 2> make.err


Название: Re: Qt 5.7 статическая сборка с MySQL и OpenSSL для начала в MinGW32
Отправлено: ЙадоФитый ПлюсЧ от Август 08, 2016, 11:02
статику редко кто собирает, ибо смысла нет и нарушение лицензии lgpl

что за комп такой что 30 часов собирать ? 20 мин на corei7

очевидно что примеры, тесты и webkit собирать не нужно


Программа, собранная с динамической линковкой, вместе с либами (коре, гуи. виджеты, сеть, эскъяэль и дебагерные версии их, не смотря на то, что выбран профиль релиз), в 5.6 от комьюнити, весит за 500 МБ. Статической линковкой - 16 МБ.

Процессор, Core i7 3770, 8 GB. Но там и без моих экспериментов нагрузка на процессор под 100%. К тому же у меня приоритет ниже среднего.
В VirtualBox на i5-4430 сборка умирает сразу.


Название: Re: Qt 5.7 статическая сборка с MySQL и OpenSSL для начала в MinGW32
Отправлено: qate от Август 08, 2016, 15:02
make -j 4 | tee make_log_64bit
В чём профит такого написания?
Сам я пишу
Код:
make -j 4 > make.log 2> make.err

tee позволяет видеть и процесс и в тоже время писать в файл
при ошибке можно просто взглянуть на консоль и увидеть её и иметь файл лога, при его необходимости


Название: Re: Qt 5.7 статическая сборка с MySQL и OpenSSL для начала в MinGW32
Отправлено: qate от Август 08, 2016, 15:08
Программа, собранная с динамической линковкой, вместе с либами (коре, гуи. виджеты, сеть, эскъяэль и дебагерные версии их, не смотря на то, что выбран профиль релиз), в 5.6 от комьюнити, весит за 500 МБ. Статической линковкой - 16 МБ.

Процессор, Core i7 3770, 8 GB. Но там и без моих экспериментов нагрузка на процессор под 100%. К тому же у меня приоритет ниже среднего.
В VirtualBox на i5-4430 сборка умирает сразу.

1. чтото напутано с ключами, не весит релиз 500 мб, а минимум в 10 раз меньше

2. можно попробовать vmware



Название: Re: Qt 5.7 статическая сборка с MySQL и OpenSSL для начала в MinGW32
Отправлено: Bepec от Август 08, 2016, 16:59
Вы скорее всего импорт дебажные дллки добавили в проект. Ну или глюк какой. В релизе дебажных длл быть не должно :)