Я портирую проект Visual Studio 2010 на CMake и Visual Studio 2015. Я создаю и связываю с поведением по умолчанию с Qt
find_package (Qt5 5.9.3 COMPONENTS
Core
Multimedia
Network
Widgets
Xml
XmlPatterns
REQUIRED)
Я хочу воспользоваться преимуществом того факта, что у меня есть лицензия разработчика и я должен иметь возможность статической ссылки на библиотеки Qt без сборки из исходных текстов, что значительно очищает каталог моего приложения.
Я устанавливаю связь с
target_link_libraries (${ProjectName}
Qt5::Core
Qt5::Multimedia
Qt5::Network
Qt5::Widgets
Qt5::Xml
Qt5::XmlPatterns)
что еще мне нужно, чтобы статическая ссылка?
Я тоже так сделаю. Я оставлю это, посмотрю, получу ли я здесь сначала ответ. Google-fu ужасно плохо давал мне конкретные результаты на мои вопросы по CMake.





Если это еще не сделано, вам придется собрать Qt статически.
Вкратце, вам нужно установить perl, python, необязательно jom и следовать инструкциям на https://doc.qt.io/qt-5/windows-building.html
После загрузки исходного кода и запуска оболочки команда configure будет выглядеть следующим образом
configure.bat -platform win32-msvc -release ^
-nomake examples ^
-nomake tests ^
-static
Вам также нужно будет решить, хотите ли вы Поддержка SSL или нет. Если нет, просто дайте возможность:
-no-ssl
Если да, дополнительная опция, похожая на
-openssl -I %OPENSSL_INCLUDE_DIR% -L %OPENSSL_LIBRARY_DIR%
должно быть пройдено.
Можно использовать OpenSSL версии используется в сценарии подготовки Qt5.
$version = "1_0_2o"
$externalUrl = "https://slproweb.com/download/Win64OpenSSL-$version.exe"
Вам также придется принять какое-то решение в этом отношении: https://doc.qt.io/qt-5/windows-requirements.html
Посоветовавшись напрямую с Qt, я могу подтвердить, что даже их лицензионные дистрибутивы для разработчиков не содержат статически подключаемых библиотек.
Если у вас есть лицензия разработчика, вы можете легко спросить Qt напрямую. Они оказывают некоторую поддержку людям с лицензиями разработчика.