[Interest] Qt6 CMake Windows VS Debug Build Issues

Oliver Niebuhr googleersatz at oliverniebuhr.de
Tue Jun 30 05:18:16 CEST 2020


Hello List.

I keep running into some Issues when trying to build a Debug Build with
* Clang 10.0.1, build from Git, with VS 2019, Release build
* CMake 3.17.3
* Ninja 1.10
* VS 2019 16.6.2
* Qt 6 Dev Branch: latest Git

Issue Number 1 is a too long Input Line. No problem with Release builds
though.
"[1/1547] Automatic QML type registration for target
qmlfolderlistmodelplugin
FAILED:
qtdeclarative/src/imports/folderlistmodel/qmlfolderlistmodelplugin_qmltyperegistrations.cpp

cmd.exe /C "cd /D
C:\Dev\QtSrcx86DevMSVC\qtdeclarative\src\imports\folderlistmodel && set
"PATH=C:\Dev\QtSrcx86DevMSVC\qtdeclarative\bin;C:\Dev\Qtx86DevDebugMSVC\bin;%PATH%"
&& C:\Dev\QtSrcx86DevMSVC\qtbase\bin\qmltyperegistrar.exe
--generate-qmltypes=C:/Dev/QtSrcx86DevMSVC/qtdeclarative/src/imports/folderlistmodel/plugins.qmltypes
--import-name=Qt.labs.folderlistmodel --major-version=6
--minor-version=0
@C:/Dev/QtSrcx86DevMSVC/qtdeclarative/src/imports/folderlistmodel/qmltypes/foreign_types.txt
-o
C:/Dev/QtSrcx86DevMSVC/qtdeclarative/src/imports/folderlistmodel/qmlfolderlistmodelplugin_qmltyperegistrations.cpp
C:/Dev/QtSrcx86DevMSVC/qtdeclarative/src/imports/folderlistmodel/meta_types/qt6qmlfolderlistmodelplugin_debug_metatypes.json"
The input line is too long."

Issue Number 2 is a "mismatch detected for '_ITERATOR_DEBUG_LEVEL'" with
"[4/1547] Linking CXX executable qtbase\bin\lupdate.exe
FAILED: qtbase/bin/lupdate.exe
cmd.exe /C "cd . && C:\Dev\CMake\bin\cmake.exe -E vs_link_exe
--intdir=qttools\src\linguist\lupdate\CMakeFiles\lupdate.dir
--rc=C:\PROGRA~2\WI3CF2~1\10\bin\100190~1.0\x64\rc.exe
--mt=C:\PROGRA~2\WI3CF2~1\10\bin\100190~1.0\x64\mt.exe --manifests  --
C:\PROGRA~2\MICROS~2\2019\COMMUN~1\VC\Tools\MSVC\1426~1.288\bin\Hostx64\x86\link.exe
/nologo @CMakeFiles\lupdate.rsp  /out:qtbase\bin\lupdate.exe
/implib:qttools\src\linguist\lupdate\lupdate.lib
/pdb:qtbase\bin\lupdate.pdb /version:0.0  /machine:X86 /DYNAMICBASE
/SUBSYSTEM:CONSOLE,10.0 /DEBUG:FASTLINK /GUARD:CF /INCREMENTAL /NXCOMPAT
/subsystem:console   -DYNAMICBASE -NXCOMPAT  && cd ."
LINK Pass 1: command
"C:\PROGRA~2\MICROS~2\2019\COMMUN~1\VC\Tools\MSVC\1426~1.288\bin\Hostx64\x86\link.exe
/nologo @CMakeFiles\lupdate.rsp /out:qtbase\bin\lupdate.exe
/implib:qttools\src\linguist\lupdate\lupdate.lib
/pdb:qtbase\bin\lupdate.pdb /version:0.0 /machine:X86 /DYNAMICBASE
/SUBSYSTEM:CONSOLE,10.0 /DEBUG:FASTLINK /GUARD:CF /INCREMENTAL /NXCOMPAT
/subsystem:console -DYNAMICBASE -NXCOMPAT /MANIFEST
/MANIFESTFILE:qttools\src\linguist\lupdate\CMakeFiles\lupdate.dir/intermediate.manifest
qttools\src\linguist\lupdate\CMakeFiles\lupdate.dir/manifest.res" failed
(exit code 1319) with the following output:
clangTooling.lib(Tooling.cpp.obj) : error LNK2038: mismatch detected for
'_ITERATOR_DEBUG_LEVEL': value '0' doesn't match value '2' in
numerus.cpp.obj
clangTooling.lib(Tooling.cpp.obj) : error LNK2038: mismatch detected for
'RuntimeLibrary': value 'MD_DynamicRelease' doesn't match value
'MDd_DynamicDebug' in numerus.cpp.obj
clangTooling.lib(CommonOptionsParser.cpp.obj) : error LNK2038: mismatch
detected for '_ITERATOR_DEBUG_LEVEL': value '0' doesn't match value '2'
in numerus.cpp.obj
clangTooling.lib(CommonOptionsParser.cpp.obj) : error LNK2038: mismatch
detected for 'RuntimeLibrary': value 'MD_DynamicRelease' doesn't match
value 'MDd_DynamicDebug' in numerus.cpp.obj
clangTooling.lib(ArgumentsAdjusters.cpp.obj) : error LNK2038: mismatch
detected for '_ITERATOR_DEBUG_LEVEL': value '0' doesn't match value '2'
in numerus.cpp.obj
clangTooling.lib(ArgumentsAdjusters.cpp.obj) : error LNK2038: mismatch
detected for 'RuntimeLibrary': value 'MD_DynamicRelease' doesn't match
value 'MDd_DynamicDebug' in numerus.cpp.obj
[etc. etc. etc.]"

Yes, I have tested removing the additional Compiler Flags like /Qspectre
etc. - those are not the Problem. And please ignore the Numbers which
counting the build order: I had to restart Ninja to get the Error
Messages - Windows CMD Shell Output is very limited. No matter how high
you set the Buffer Number.

I am fully aware that the CMake Port is not finished and has a lot of
Issues (having the Qt6 Bugreports Site pinned in the Browser). Still:
Should I create a BR or wait for some Changes to Merge?

Thanks!
Olli

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20200630/7a5feb85/attachment.sig>


More information about the Interest mailing list