我想用预构建的MySQL/OpenSSL
库来构建Qt 6
,以尝试新功能,但我在配置参数方面遇到了一些问题。
例如,我有这样的配置参数:configure.bat -debug -static -static-runtime -confirm-license -opensource -nomake examples -no-ltcg -sql-mysql -openssl-linked -prefix "C:Test6.0.0msvc2019_64"
当我添加-sql-mysql
或-openssl-linked
参数时,我得到了以下问题:
CMake Error at qtbase/cmake/QtProcessConfigureArgs.cmake:788 (message):
CMake exited with code 1.
此外,我尝试使用-skip qtwebengine
,但cmake
返回BUILD_qtwebengine not used by the project
。一些参数没有正确地转换为cmake
。在哪里我可以获得cmake
参数的完整列表来构建Qt 6
?
[更新]
我已经将一些参数转换为cmake
:
cmake -DCMAKE_BUILD_TYPE=Debug -DBUILD_SHARED_LIBS=OFF -DQT_BUILD_EXAMPLES=OFF -DINPUT_static_runtime=ON -DFEATURE_ltcg=OFF -DCMAKE_INSTALL_PREFIX="C:Test6.0.0msvc2019_64" -G Ninja C:QtBuildqt-everywhere-src-6.0.0
但仍然找不到任何文档如何翻译那些:-confirm-license -opensource -skip qtwebengine -openssl_linked -sql-mysql
我以前使用CMake Option Reference构建过MySQL
库:https://dev.mysql.com/doc/mysql-sourcebuild-excerpt/8.0/en/source-configuration-options.html#cmake-期权参考
Qt 6
是否有类似的参考资料?非常感谢。
感谢李新伟(https://bugreports.qt.io/browse/QTBUG-89993)问题解决了。现在,它成功地找到了OpenSSL
和MySQL libs
。
Cmake参数:
cmake -DCMAKE_BUILD_TYPE=Debug -DBUILD_SHARED_LIBS=OFF -DQT_BUILD_EXAMPLES=OFF -DINPUT_static_runtime=ON -DFEATURE_ltcg=OFF -DBUILD_qtwebengine=OFF -DOPENSSL_ROOT_DIR="C:OpenSSLopenssl-1.1.1istaticx64debug" -DOPENSSL_USE_STATIC_LIBS=TRUE -DOPENSSL_MSVC_STATIC_RT=TRUE -DINPUT_sql_mysql=ON -DMySQL_INCLUDE_DIRS="C:MySQLmysql-5.7.32-winx64debuginclude" -DMySQL_LIBRARIES="C:MySQLmysql-5.7.32-winx64debuglibmysqlclientMTd.lib" -DCMAKE_INSTALL_PREFIX="C:QtStatic6.0.0msvc2019_64" -G Ninja C:QtBuildqt-everywhere-src-6.0.0
将所有qt6功能列为cmake标志:
find . -name configure.cmake | xargs cat | grep ^qt_feature | cut -d'"' -f2 | sed 's/-/_/g; s/^.*$/ "-DQT_FEATURE_&=ON"/' | tee all-features.txt
head all-features.txt
"-DQT_FEATURE_qtwebengine_build=ON"
"-DQT_FEATURE_qtwebengine_core_build=ON"
"-DQT_FEATURE_qtwebengine_widgets_build=ON"
"-DQT_FEATURE_qtwebengine_quick_build=ON"
cat all-features.txt | grep some_feature