I building qt6(6.8.1) from source in windows 11, this is my cmd:
"C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvarsall.bat" x64 10.0.22621.0 -vcvars_ver=14.29.30133
set INCLUDE=C:\Library\vcpkg\installed\v142-x64-dynamic-md\include;%INCLUDE%
set LIB=C:\Library\vcpkg\installed\v142-x64-dynamic-md\lib;%LIB%
set PATH=C:\Library\vcpkg\installed\v142-x64-dynamic-md\bin;%PATH%
set PATH=c:\DevTool\libclang-riit\release\bin;%PATH%
.\configure.bat -platform win32-msvc -nomake tests -nomake examples -opensource -confirm-license ^
-prefix output/v142-x64-release-dynamic-md ^
-release ^
-shared ^
-force-debug-info ^
-separate-debug-info ^
-c++std c++17 ^
-skip qtdoc ^
-skip qtwebengine ^
-skip qtwebview ^
-system-zlib ^
ZLIB_LIBS="zlib.lib" ^
-system-libpng ^
LIBPNG_LIBS="libpng16.lib" ^
-system-libjpeg ^
LIBJPEG_LIBS="jpeg.lib turbojpeg.lib" ^
-system-freetype ^
FREETYPE_LIBS="freetype.lib" ^
-system-harfbuzz ^
-system-sqlite ^
-system-pcre ^
PCRE2_LIBS="pcre2-8.lib pcre2-16.lib pcre2-32.lib pcre2-posix.lib" ^
-system-doubleconversion ^
-system-webp ^
WEBP_LIBS="libwebpdecoder.lib libwebpdemux.lib libwebpmux.lib libwebp.lib" ^
-system-tiff ^
TIFF_LIBS="tiff.lib" ^
-ssl ^
-openssl ^
-openssl-runtime ^
OPENSSL_LIBS="libssl.lib libcrypto.lib" ^
-icu ^
ICU_LIBS="icudt.lib icuin.lib icuio.lib icuuc.lib" ^
-gif ^
-ico ^
-no-vulkan ^
-no-xcb ^
-no-egl ^
-no-libudev ^
-no-slog2 ^
-no-dbus ^
-DCMAKE_CXX_STANDARD=17 ^
-DCMAKE_C_STANDARD=11
cmake --build . --parallel
However, this failed:
c:\Work\Source\QT\QT_6.8.1>cmake --build build\v142-release-shared-md --target qtbase
[132/1528] Automatic MOC for target QSchannelBackendPlugin
FAILED: qtbase/src/plugins/tls/schannel/QSchannelBackendPlugin_autogen/timestamp qtbase/src/plugins/tls/schannel/QSchannelBackendPlugin_autogen/mocs_compilation.cpp C:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/qtbase/src/plugins/tls/schannel/QSchannelBackendPlugin_autogen/timestamp C:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/qtbase/src/plugins/tls/schannel/QSchannelBackendPlugin_autogen/mocs_compilation.cpp
C:\WINDOWS\system32\cmd.exe /C "cd /D C:\Work\Source\QT\QT_6.8.1\build\v142-release-shared-md\qtbase\src\plugins\tls\schannel && C:\DevTool\cmake\bin\cmake.exe -E cmake_autogen C:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/qtbase/src/plugins/tls/schannel/CMakeFiles/QSchannelBackendPlugin_autogen.dir/AutogenInfo.json RelWithDebInfo && C:\DevTool\cmake\bin\cmake.exe -E touch C:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/qtbase/src/plugins/tls/schannel/QSchannelBackendPlugin_autogen/timestamp && C:\DevTool\cmake\bin\cmake.exe -E cmake_transform_depfile Ninja gccdepfile C:/Work/Source/QT/QT_6.8.1 C:/Work/Source/QT/QT_6.8.1/qtbase/src/plugins/tls/schannel C:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md C:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/qtbase/src/plugins/tls/schannel C:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/qtbase/src/plugins/tls/schannel/QSchannelBackendPlugin_autogen/deps C:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/CMakeFiles/d/0c35499e00e5c581ee7c4eee6475462d3a5c5365e156a5d2aafd13f3ce126fc6.d"
AutoMoc subprocess error
------------------------
The moc process failed to compile
"SRC:/qtbase/src/plugins/tls/schannel/qtlsbackend_schannel_p.h"
into
"SRC:/build/v142-release-shared-md/qtbase/src/plugins/tls/schannel/QSchannelBackendPlugin_autogen/EWIEGA46WW/moc_qtlsbackend_schannel_p.cpp"
Process failed with return value 3221225781
Command
-------
C:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/qtbase/bin/moc.exe -DCMAKE_CXX_STANDARD=17 -DCMAKE_C_STANDARD=11 -DNOMINMAX -DQSchannelBackendPlugin_EXPORTS -DQT_CORE_LIB -DQT_DEPRECATED_WARNINGS -DQT_EXPLICIT_QFILE_CONSTRUCTION_FROM_PATH -DQT_LEAN_HEADERS=1 -DQT_NETWORK_LIB -DQT_NO_CAST_FROM_ASCII -DQT_NO_DEBUG -DQT_NO_EXCEPTIONS -DQT_NO_FOREACH -DQT_NO_JAVA_STYLE_ITERATORS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_QASCONST -DQT_NO_QEXCHANGE -DQT_NO_QSNPRINTF -DQT_PLUGIN -DQT_USE_QSTRINGBUILDER -DUNICODE -DWIN32 -DWIN64 -D_CRT_SECURE_NO_WARNINGS -D_ENABLE_EXTENDED_ALIGNED_STORAGE -D_UNICODE -D_WIN64 -IC:/Work/Source/QT/QT_6.8.1/qtbase/src/plugins/tls/schannel -IC:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/qtbase/src/plugins/tls/schannel -IC:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/qtbase/include -IC:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/qtbase/src/network -IC:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/qtbase/include/QtNetwork/6.8.1 -IC:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/qtbase/include/QtNetwork/6.8.1/QtNetwork -IC:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/qtbase/src/corelib -IC:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/qtbase/include/QtCore/6.8.1 -IC:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/qtbase/include/QtCore/6.8.1/QtCore -IC:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/qtbase/include/QtCore -IC:/Work/Source/QT/QT_6.8.1/qtbase/mkspecs/win32-msvc -IC:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/qtbase/include/QtNetwork --output-json --output-dep-file -o C:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/qtbase/src/plugins/tls/schannel/QSchannelBackendPlugin_autogen/EWIEGA46WW/moc_qtlsbackend_schannel_p.cpp C:/Work/Source/QT/QT_6.8.1/qtbase/src/plugins/tls/schannel/qtlsbackend_schannel_p.h
Output
------
enter image description here
I am compiling the release version, why is the debug dynamic library linked?
If remove -force-debug-info -separate-debug-info, can success. Or replace with -debug -shared, also success, but I want to pdb file.
I building qt6(6.8.1) from source in windows 11, this is my cmd:
"C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvarsall.bat" x64 10.0.22621.0 -vcvars_ver=14.29.30133
set INCLUDE=C:\Library\vcpkg\installed\v142-x64-dynamic-md\include;%INCLUDE%
set LIB=C:\Library\vcpkg\installed\v142-x64-dynamic-md\lib;%LIB%
set PATH=C:\Library\vcpkg\installed\v142-x64-dynamic-md\bin;%PATH%
set PATH=c:\DevTool\libclang-riit\release\bin;%PATH%
.\configure.bat -platform win32-msvc -nomake tests -nomake examples -opensource -confirm-license ^
-prefix output/v142-x64-release-dynamic-md ^
-release ^
-shared ^
-force-debug-info ^
-separate-debug-info ^
-c++std c++17 ^
-skip qtdoc ^
-skip qtwebengine ^
-skip qtwebview ^
-system-zlib ^
ZLIB_LIBS="zlib.lib" ^
-system-libpng ^
LIBPNG_LIBS="libpng16.lib" ^
-system-libjpeg ^
LIBJPEG_LIBS="jpeg.lib turbojpeg.lib" ^
-system-freetype ^
FREETYPE_LIBS="freetype.lib" ^
-system-harfbuzz ^
-system-sqlite ^
-system-pcre ^
PCRE2_LIBS="pcre2-8.lib pcre2-16.lib pcre2-32.lib pcre2-posix.lib" ^
-system-doubleconversion ^
-system-webp ^
WEBP_LIBS="libwebpdecoder.lib libwebpdemux.lib libwebpmux.lib libwebp.lib" ^
-system-tiff ^
TIFF_LIBS="tiff.lib" ^
-ssl ^
-openssl ^
-openssl-runtime ^
OPENSSL_LIBS="libssl.lib libcrypto.lib" ^
-icu ^
ICU_LIBS="icudt.lib icuin.lib icuio.lib icuuc.lib" ^
-gif ^
-ico ^
-no-vulkan ^
-no-xcb ^
-no-egl ^
-no-libudev ^
-no-slog2 ^
-no-dbus ^
-DCMAKE_CXX_STANDARD=17 ^
-DCMAKE_C_STANDARD=11
cmake --build . --parallel
However, this failed:
c:\Work\Source\QT\QT_6.8.1>cmake --build build\v142-release-shared-md --target qtbase
[132/1528] Automatic MOC for target QSchannelBackendPlugin
FAILED: qtbase/src/plugins/tls/schannel/QSchannelBackendPlugin_autogen/timestamp qtbase/src/plugins/tls/schannel/QSchannelBackendPlugin_autogen/mocs_compilation.cpp C:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/qtbase/src/plugins/tls/schannel/QSchannelBackendPlugin_autogen/timestamp C:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/qtbase/src/plugins/tls/schannel/QSchannelBackendPlugin_autogen/mocs_compilation.cpp
C:\WINDOWS\system32\cmd.exe /C "cd /D C:\Work\Source\QT\QT_6.8.1\build\v142-release-shared-md\qtbase\src\plugins\tls\schannel && C:\DevTool\cmake\bin\cmake.exe -E cmake_autogen C:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/qtbase/src/plugins/tls/schannel/CMakeFiles/QSchannelBackendPlugin_autogen.dir/AutogenInfo.json RelWithDebInfo && C:\DevTool\cmake\bin\cmake.exe -E touch C:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/qtbase/src/plugins/tls/schannel/QSchannelBackendPlugin_autogen/timestamp && C:\DevTool\cmake\bin\cmake.exe -E cmake_transform_depfile Ninja gccdepfile C:/Work/Source/QT/QT_6.8.1 C:/Work/Source/QT/QT_6.8.1/qtbase/src/plugins/tls/schannel C:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md C:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/qtbase/src/plugins/tls/schannel C:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/qtbase/src/plugins/tls/schannel/QSchannelBackendPlugin_autogen/deps C:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/CMakeFiles/d/0c35499e00e5c581ee7c4eee6475462d3a5c5365e156a5d2aafd13f3ce126fc6.d"
AutoMoc subprocess error
------------------------
The moc process failed to compile
"SRC:/qtbase/src/plugins/tls/schannel/qtlsbackend_schannel_p.h"
into
"SRC:/build/v142-release-shared-md/qtbase/src/plugins/tls/schannel/QSchannelBackendPlugin_autogen/EWIEGA46WW/moc_qtlsbackend_schannel_p.cpp"
Process failed with return value 3221225781
Command
-------
C:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/qtbase/bin/moc.exe -DCMAKE_CXX_STANDARD=17 -DCMAKE_C_STANDARD=11 -DNOMINMAX -DQSchannelBackendPlugin_EXPORTS -DQT_CORE_LIB -DQT_DEPRECATED_WARNINGS -DQT_EXPLICIT_QFILE_CONSTRUCTION_FROM_PATH -DQT_LEAN_HEADERS=1 -DQT_NETWORK_LIB -DQT_NO_CAST_FROM_ASCII -DQT_NO_DEBUG -DQT_NO_EXCEPTIONS -DQT_NO_FOREACH -DQT_NO_JAVA_STYLE_ITERATORS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_QASCONST -DQT_NO_QEXCHANGE -DQT_NO_QSNPRINTF -DQT_PLUGIN -DQT_USE_QSTRINGBUILDER -DUNICODE -DWIN32 -DWIN64 -D_CRT_SECURE_NO_WARNINGS -D_ENABLE_EXTENDED_ALIGNED_STORAGE -D_UNICODE -D_WIN64 -IC:/Work/Source/QT/QT_6.8.1/qtbase/src/plugins/tls/schannel -IC:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/qtbase/src/plugins/tls/schannel -IC:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/qtbase/include -IC:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/qtbase/src/network -IC:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/qtbase/include/QtNetwork/6.8.1 -IC:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/qtbase/include/QtNetwork/6.8.1/QtNetwork -IC:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/qtbase/src/corelib -IC:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/qtbase/include/QtCore/6.8.1 -IC:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/qtbase/include/QtCore/6.8.1/QtCore -IC:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/qtbase/include/QtCore -IC:/Work/Source/QT/QT_6.8.1/qtbase/mkspecs/win32-msvc -IC:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/qtbase/include/QtNetwork --output-json --output-dep-file -o C:/Work/Source/QT/QT_6.8.1/build/v142-release-shared-md/qtbase/src/plugins/tls/schannel/QSchannelBackendPlugin_autogen/EWIEGA46WW/moc_qtlsbackend_schannel_p.cpp C:/Work/Source/QT/QT_6.8.1/qtbase/src/plugins/tls/schannel/qtlsbackend_schannel_p.h
Output
------
enter image description here
I am compiling the release version, why is the debug dynamic library linked?
If remove -force-debug-info -separate-debug-info, can success. Or replace with -debug -shared, also success, but I want to pdb file.
Share Improve this question asked Jan 29 at 14:35 pp wpp w 11 Answer
Reset to default 0I achieved this directly using cmake. This is cmake commandline:
cmake -S ../.. ^
-G Ninja ^
-DCMAKE_BUILD_TYPE=Release ^
-DBUILD_SHARED_LIBS=ON ^
-DFEATURE_force_debug_info=ON ^
-DFEATURE_separate_debug_info=ON ^
-DFEATURE_static_runtime=OFF ^
-DCMAKE_INSTALL_PREFIX="C:/Library/QT/6.8.1/VS2019/x64-release-shared" ^
-DINPUT_openssl=runtime ^
-DBUILD_qtdoc=OFF ^
-DBUILD_qtwebengine=OFF ^
-DBUILD_qtwebview=OFF ^
-DQT_INTERNAL_CALLED_FROM_CONFIGURE:BOOL=TRUE ^
-DBUILD_WITH_PCH=OFF ^
-DQT_QMAKE_TARGET_MKSPEC=win32-msvc ^
-DCMAKE_C_COMPILER=cl ^
-DCMAKE_CXX_COMPILER=cl ^
-DQT_BUILD_TESTS=FALSE ^
-DQT_BUILD_EXAMPLES=FALSE ^
-DFEATURE_cxx20=OFF ^
-DFEATURE_cxx2b=OFF ^
-DFEATURE_ssl=ON ^
-DFEATURE_system_zlib=ON ^
-DFEATURE_system_sqlite=ON ^
-DINPUT_libpng=system ^
-DINPUT_libjpeg=system ^
-DINPUT_freetype=system ^
-DINPUT_harfbuzz=system ^
-DINPUT_pcre=system ^
-DINPUT_doubleconversion=system ^
-DINPUT_webp=system ^
-DINPUT_tiff=system ^
-DFEATURE_icu=ON ^
-DFEATURE_gif=ON ^
-DFEATURE_ico=ON ^
-DFEATURE_vulkan=OFF ^
-DFEATURE_xcb=OFF ^
-DFEATURE_egl=OFF ^
-DFEATURE_libudev=OFF ^
-DFEATURE_slog2=OFF ^
-DFEATURE_dbus=OFF ^
-DCMAKE_CXX_STANDARD=17 ^
-DCMAKE_C_STANDARD=11 ^
-DCMAKE_CXX_FLAGS_RELEASE="/Zi /DNDEBUG" ^
-DCMAKE_C_FLAGS_RELEASE="/Zi /DNDEBUG" ^
-DCMAKE_EXE_LINKER_FLAGS_RELEASE="/debug" ^
-DCMAKE_SHARED_LINKER_FLAGS_RELEASE="/debug" ^
-DCMAKE_MODULE_LINKER_FLAGS_RELEASE="/debug" ^
-DCMAKE_STATIC_LIBRARY_FLAGS_RELEASE="/debug"