Всем привет.
Пытаюсь собрать статически Qt 5.7.0. Компилятор использую от MS Visual Studio 2015.
Сперва собрал openssl 1.0.2k и mysql 5.7.
Параметры configure такие:
configure.bat -prefix C:\Qt\Qt5.7.0-static -opengl desktop -opensource -confirm-license -nomake examples -nomake tests -debug-and-release -static -static-runtime -no-qml-debug -qt-zlib -qt-libpng -qt-libjpeg -qt-freetype -openssl-linked -I C:\lib\openssl\1.0.2k-static64-debug\include -L C:\lib\openssl\1.0.2k-static64-debug\lib -l Gdi32 -l User32 OPENSSL_LIBS="-llibeay32 -lssleay32" -qt-sql-mysql -I C:\lib\mysql\include -L C:\lib\mysql\lib -l mysqlclient
Перед сборкой запускаю такой .cmd-файл (как сказано
здесь):
CALL "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x64
SET _ROOT=C:\Qt\qt-5
SET PATH=%_ROOT%\qtbase\bin;%_ROOT%\gnuwin32\bin;%PATH%
SET QMAKESPEC=win32-msvc2015
SET _ROOT=
Несколько часов оно собирается (под виртуальной машиной), потом вываливается с вот такими ошибками:
mysqlclient.lib(my_init.obj) : error LNK2019: unresolved external symbol __imp_putenv referenced in function win_init_registry
OLDNAMES.lib(putenv.obi) : error LNK2001: unresolved external symbol __imp_putenv
mysqlclient.lib(int2str.obj) : error LNK2019: unresolved external symbol __imp_ldiv referenced in function int2str
+++++++++++куча других : error LNK2019: unresolved external symbol __imp_[имя функции]
..\..\..\bin\assistant.exe : fatal error LNK1120: 18 unresolved externals
Я немного погуглил по этим самым unresolved external symbol, это, вроде как, функции микрософтовской библиотеки C++ (какие-то из них объявлены в stdlib.h, какие-то в string.h, все не искал). При этом, как .h файлы этой библиотеки присутствуют в переменной окружения %INCLUDE%, так и путь к .lib-файлам присутствует в переменной окружения %LIB%.
Прошу помощи в решении этой проблемы.