QMake trace issue
-
wrote on 18 Sept 2022, 12:01 last edited by
Hello!
I want to add the trace command to my batch file to find out what causes the errors during
Qt 5.15.6
compilation. From the docs: https://wiki.qt.io/Qt_Build_System_Glossary#qmake_trace_fileI have to use this command:
-d -d -d >qmake.trace 2>&1
When I try it in my batch file:%qtBuildSourcePath%\configure.bat -verbose -d -d -d >qmake.trace 2>&1 -debug -%qtBuildType% -static-runtime -confirm-license -mp -opensource -nomake examples -no-ltcg -sql-mysql -I "%qtBuildMySqlIncludePath%" -L "%qtBuildMySqlLibPath%" MYSQL_LIBS="-lmysqlclientMTd -lAdvapi32 -lUser32 -lCrypt32 -lGdi32" -ssl -openssl -openssl-linked -I "%qtBuildOpenSSLIncludePath%" -L "%qtBuildOpenSSLLibPath%" OPENSSL_LIBS="-llibcryptoMTd -llibsslMTd -lUser32 -lAdvapi32 -lGdi32 -lCrypt32 -lWs2_32" -prefix "%qtInstallationPath%"
It creates the trace file and breaks the Qt compilation process with the following error:
ERROR: Unknown command line option '-d'.
:Short output:
+ cd qtbase + C:\QtBuild\qt-everywhere-src-5.15.6\qtbase\configure.bat -top-level -verbose -d -d -d -debug -static -static-runtime -confirm-license -mp -opensource -nomake examples -no-ltcg -sql-mysql -I "C:\MySQL\mysql-5.7.39-win32\debug\include" -L "C:\MySQL\mysql-5.7.39-win32\debug\lib" MYSQL_LIBS="-lmysqlclientMTd -lAdvapi32 -lUser32 -lCrypt32 -lGdi32" -ssl -openssl -openssl-linked -I "C:\OpenSSL\openssl-1.1.1q\static\x86\debug\include" -L "C:\OpenSSL\openssl-1.1.1q\static\x86\debug\lib" OPENSSL_LIBS="-llibcryptoMTd -llibsslMTd -lUser32 -lAdvapi32 -lGdi32 -lCrypt32 -lWs2_32" -prefix "C:\QtStatic\5.15.6\msvc2019" Bootstrapping qmake ... jom 1.1.3 - empower your cores cl -c -Fo./ -Fdqmake.pdb -W2 -nologo -O2 /MP /wd4577 -IC:\QtBuild\qt-everywhere-src-5.15.6\qtbase\qmake -IC:\QtBuild\qt-everywhere-src-5.15.6\qtbase\qmake\library -IC:\QtBuild\qt-everywhere-src-5.15.6\qtbase\qmake\generators -IC:\QtBuild\qt-everywhere-src-5.15.6\qtbase\qmake\generators\unix -IC:\QtBuild\qt-everywhere-src-5.15.6\qtbase\qmake\generators\win32 -IC:\QtBuild\qt-everywhere-src-5.15.6\qtbase\qmake\generators\mac -IC:\QtBuild\qt-everywhere-src-5.15.6\qtbase/src/3rdparty/tinycbor/src -IC:\QtBuild\qt-everywhere-src-5.15.6\qtbase/include -IC:\QtBuild\qt-everywhere-src-5.15.6\qtbase/include\QtCore -IC:\QtBuild\qt-everywhere-src-5.15.6\qtbase/include\QtCore\5.15.6 -IC:\QtBuild\qt-everywhere-src-5.15.6\qtbase/include\QtCore\5.15.6\QtCore -I..\src\corelib\global -IC:\QtBuild\qt-everywhere-src-5.15.6\qtbase\mkspecs\win32-msvc -D_CRT_SECURE_NO_WARNINGS -D_SCL_SECURE_NO_WARNINGS -DQT_VERSION_STR=\"5.15.6\" -DQT_VERSION_MAJOR=5 -DQT_VERSION_MINOR=15 -DQT_VERSION_PATCH=6 -DQT_BUILD_QMAKE -DQT_BOOTSTRAPPED -DPROEVALUATOR_FULL -DQT_NO_FOREACH -DUNICODE -D_ENABLE_EXTENDED_ALIGNED_STORAGE -c -Yc -Fpqmake_pch.pch -TP C:\QtBuild\qt-everywhere-src-5.15.6\qtbase\qmake\qmake_pch.h qmake_pch.h .... link /OUT:..\bin\qmake.exe project.obj main.obj ioutils.obj proitems.obj qmakevfs.obj qmakeglobals.obj qmakeparser.obj qmakeevaluator.obj qmakebuiltins.obj makefile.obj unixmake.obj unixmake2.obj mingw_make.obj option.obj winmakefile.obj projectgenerator.obj property.obj meta.obj makefiledeps.obj metamakefile.obj xmloutput.obj msvc_nmake.obj msvc_vcproj.obj msvc_vcxproj.obj msvc_objectmodel.obj msbuild_objectmodel.obj registry.obj qbitarray.obj qbuffer.obj qcryptographichash.obj qfilesystementry.obj qfilesystemengine.obj qfilesystemengine_win.obj qfilesystemiterator_win.obj qfsfileengine.obj qfsfileengine_iterator.obj qarraydata.obj qbytearray.obj qbytearraylist.obj qvsnprintf.obj qbytearraymatcher.obj qcalendar.obj qdatetime.obj qdir.obj qdiriterator.obj qfiledevice.obj qfile.obj qtemporaryfile.obj qabstractfileengine.obj qfsfileengine_win.obj qsystemlibrary.obj qfileinfo.obj qendian.obj qglobal.obj qgregoriancalendar.obj qhash.obj qiodevice.obj qringbuffer.obj qdebug.obj qlist.obj qlocale.obj qlocale_tools.obj qlocale_win.obj qversionnumber.obj qmalloc.obj qmap.obj qoperatingsystemversion.obj qoperatingsystemversion_win.obj qregexp.obj qromancalendar.obj qutfcodec.obj qstring.obj qstringlist.obj qstringbuilder.obj qsystemerror.obj qtextstream.obj qdatastream.obj quuid.obj qrandom.obj qsettings.obj qvariant.obj qsettings_win.obj qmetatype.obj qxmlstream.obj qxmlutils.obj qnumeric.obj qlogging.obj qcborstreamwriter.obj qcborvalue.obj qjsoncbor.obj qjsondocument.obj qjsonparser.obj qjsonarray.obj qjsonobject.obj qjsonvalue.obj qlibraryinfo.obj qmake_pch.obj ole32.lib advapi32.lib shell32.lib netapi32.lib Microsoft (R) Incremental Linker Version 14.29.30146.0 Copyright (C) Microsoft Corporation. All rights reserved. Info: creating super cache file C:\QtBuild\qt-everywhere-src-5.15.6\qtBuild\.qmake.super Info: creating cache file C:\QtBuild\qt-everywhere-src-5.15.6\qtBuild\.qmake.cache ERROR: Unknown command line option '-d'.
Any ideas what causes such issue? What trace command should be correct for
qmake
? Thank you. -
Hello!
I want to add the trace command to my batch file to find out what causes the errors during
Qt 5.15.6
compilation. From the docs: https://wiki.qt.io/Qt_Build_System_Glossary#qmake_trace_fileI have to use this command:
-d -d -d >qmake.trace 2>&1
When I try it in my batch file:%qtBuildSourcePath%\configure.bat -verbose -d -d -d >qmake.trace 2>&1 -debug -%qtBuildType% -static-runtime -confirm-license -mp -opensource -nomake examples -no-ltcg -sql-mysql -I "%qtBuildMySqlIncludePath%" -L "%qtBuildMySqlLibPath%" MYSQL_LIBS="-lmysqlclientMTd -lAdvapi32 -lUser32 -lCrypt32 -lGdi32" -ssl -openssl -openssl-linked -I "%qtBuildOpenSSLIncludePath%" -L "%qtBuildOpenSSLLibPath%" OPENSSL_LIBS="-llibcryptoMTd -llibsslMTd -lUser32 -lAdvapi32 -lGdi32 -lCrypt32 -lWs2_32" -prefix "%qtInstallationPath%"
It creates the trace file and breaks the Qt compilation process with the following error:
ERROR: Unknown command line option '-d'.
:Short output:
+ cd qtbase + C:\QtBuild\qt-everywhere-src-5.15.6\qtbase\configure.bat -top-level -verbose -d -d -d -debug -static -static-runtime -confirm-license -mp -opensource -nomake examples -no-ltcg -sql-mysql -I "C:\MySQL\mysql-5.7.39-win32\debug\include" -L "C:\MySQL\mysql-5.7.39-win32\debug\lib" MYSQL_LIBS="-lmysqlclientMTd -lAdvapi32 -lUser32 -lCrypt32 -lGdi32" -ssl -openssl -openssl-linked -I "C:\OpenSSL\openssl-1.1.1q\static\x86\debug\include" -L "C:\OpenSSL\openssl-1.1.1q\static\x86\debug\lib" OPENSSL_LIBS="-llibcryptoMTd -llibsslMTd -lUser32 -lAdvapi32 -lGdi32 -lCrypt32 -lWs2_32" -prefix "C:\QtStatic\5.15.6\msvc2019" Bootstrapping qmake ... jom 1.1.3 - empower your cores cl -c -Fo./ -Fdqmake.pdb -W2 -nologo -O2 /MP /wd4577 -IC:\QtBuild\qt-everywhere-src-5.15.6\qtbase\qmake -IC:\QtBuild\qt-everywhere-src-5.15.6\qtbase\qmake\library -IC:\QtBuild\qt-everywhere-src-5.15.6\qtbase\qmake\generators -IC:\QtBuild\qt-everywhere-src-5.15.6\qtbase\qmake\generators\unix -IC:\QtBuild\qt-everywhere-src-5.15.6\qtbase\qmake\generators\win32 -IC:\QtBuild\qt-everywhere-src-5.15.6\qtbase\qmake\generators\mac -IC:\QtBuild\qt-everywhere-src-5.15.6\qtbase/src/3rdparty/tinycbor/src -IC:\QtBuild\qt-everywhere-src-5.15.6\qtbase/include -IC:\QtBuild\qt-everywhere-src-5.15.6\qtbase/include\QtCore -IC:\QtBuild\qt-everywhere-src-5.15.6\qtbase/include\QtCore\5.15.6 -IC:\QtBuild\qt-everywhere-src-5.15.6\qtbase/include\QtCore\5.15.6\QtCore -I..\src\corelib\global -IC:\QtBuild\qt-everywhere-src-5.15.6\qtbase\mkspecs\win32-msvc -D_CRT_SECURE_NO_WARNINGS -D_SCL_SECURE_NO_WARNINGS -DQT_VERSION_STR=\"5.15.6\" -DQT_VERSION_MAJOR=5 -DQT_VERSION_MINOR=15 -DQT_VERSION_PATCH=6 -DQT_BUILD_QMAKE -DQT_BOOTSTRAPPED -DPROEVALUATOR_FULL -DQT_NO_FOREACH -DUNICODE -D_ENABLE_EXTENDED_ALIGNED_STORAGE -c -Yc -Fpqmake_pch.pch -TP C:\QtBuild\qt-everywhere-src-5.15.6\qtbase\qmake\qmake_pch.h qmake_pch.h .... link /OUT:..\bin\qmake.exe project.obj main.obj ioutils.obj proitems.obj qmakevfs.obj qmakeglobals.obj qmakeparser.obj qmakeevaluator.obj qmakebuiltins.obj makefile.obj unixmake.obj unixmake2.obj mingw_make.obj option.obj winmakefile.obj projectgenerator.obj property.obj meta.obj makefiledeps.obj metamakefile.obj xmloutput.obj msvc_nmake.obj msvc_vcproj.obj msvc_vcxproj.obj msvc_objectmodel.obj msbuild_objectmodel.obj registry.obj qbitarray.obj qbuffer.obj qcryptographichash.obj qfilesystementry.obj qfilesystemengine.obj qfilesystemengine_win.obj qfilesystemiterator_win.obj qfsfileengine.obj qfsfileengine_iterator.obj qarraydata.obj qbytearray.obj qbytearraylist.obj qvsnprintf.obj qbytearraymatcher.obj qcalendar.obj qdatetime.obj qdir.obj qdiriterator.obj qfiledevice.obj qfile.obj qtemporaryfile.obj qabstractfileengine.obj qfsfileengine_win.obj qsystemlibrary.obj qfileinfo.obj qendian.obj qglobal.obj qgregoriancalendar.obj qhash.obj qiodevice.obj qringbuffer.obj qdebug.obj qlist.obj qlocale.obj qlocale_tools.obj qlocale_win.obj qversionnumber.obj qmalloc.obj qmap.obj qoperatingsystemversion.obj qoperatingsystemversion_win.obj qregexp.obj qromancalendar.obj qutfcodec.obj qstring.obj qstringlist.obj qstringbuilder.obj qsystemerror.obj qtextstream.obj qdatastream.obj quuid.obj qrandom.obj qsettings.obj qvariant.obj qsettings_win.obj qmetatype.obj qxmlstream.obj qxmlutils.obj qnumeric.obj qlogging.obj qcborstreamwriter.obj qcborvalue.obj qjsoncbor.obj qjsondocument.obj qjsonparser.obj qjsonarray.obj qjsonobject.obj qjsonvalue.obj qlibraryinfo.obj qmake_pch.obj ole32.lib advapi32.lib shell32.lib netapi32.lib Microsoft (R) Incremental Linker Version 14.29.30146.0 Copyright (C) Microsoft Corporation. All rights reserved. Info: creating super cache file C:\QtBuild\qt-everywhere-src-5.15.6\qtBuild\.qmake.super Info: creating cache file C:\QtBuild\qt-everywhere-src-5.15.6\qtBuild\.qmake.cache ERROR: Unknown command line option '-d'.
Any ideas what causes such issue? What trace command should be correct for
qmake
? Thank you.wrote on 18 Sept 2022, 12:19 last edited by@Cobra91151
I do not use this, but are you sure that error message is coming fromqmake
? You are passing-d -d -d
toconfigure.bat
, what makes you think that is how to pass on toqmake
, aren't the rest of the options arguments toconfigure
not toqmake
? -
wrote on 18 Sept 2022, 12:29 last edited by Cobra91151
Hello!
When compiling
Qt 5.15.6
, I got the following error:Copyright (c) Microsoft Corporation. All rights reserved. Processing C:\QtBuild\qt-everywhere-src-5.15.6\qtactiveqt\tools\testcon\testcon.idl testcon.idl Processing C:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\um\ocidl.idl ocidl.idl Processing C:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\um\oleidl.idl oleidl.idl Processing C:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\um\objidl.idl objidl.idl Processing C:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\um\unknwn.idl unknwn.idl Processing C:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\shared\wtypes.idl wtypes.idl Processing C:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\shared\wtypesbase.idl wtypesbase.idl Processing C:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\shared\basetsd.h basetsd.h Processing C:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\shared\guiddef.h guiddef.h Processing C:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\um\oaidl.idl oaidl.idl Processing C:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\um\servprov.idl servprov.idl Processing C:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\um\urlmon.idl urlmon.idl Processing C:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\um\msxml.idl msxml.idl Processing C:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\um\oaidl.acf oaidl.acf Processing C:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\um\ocidl.acf ocidl.acf 1 file(s) moved. jom: C:\QtBuild\qt-everywhere-src-5.15.6\qtdeclarative\src\qml\Makefile.Debug [.generated\debug\RegExpJitTables.h] Error 1 jom: C:\QtBuild\qt-everywhere-src-5.15.6\qtdeclarative\src\qml\Makefile [debug] Error 2 jom: C:\QtBuild\qt-everywhere-src-5.15.6\qtdeclarative\src\Makefile [sub-qml-make_first-ordered] Error 2 jom: C:\QtBuild\qt-everywhere-src-5.15.6\qtdeclarative\Makefile [sub-src-make_first] Error 2 jom: C:\QtBuild\qt-everywhere-src-5.15.6\Makefile [module-qtdeclarative-make_first] Error 2
So, how to get the trace ouput for this error?
-
wrote on 18 Sept 2022, 14:15 last edited by
The
configure
has an option called:-trace "yes"
.-trace [backend] ..... Enable instrumentation with tracepoints. Currently supported backends are 'etw' (Windows) and 'lttng' (Linux), or 'yes' for auto-detection. [no]
I have added it, but I got another issue:
Creating library ..\..\..\..\lib\libEGLd.lib and object ..\..\..\..\lib\libEGLd.exp copy /y ..\..\..\..\lib\libEGLd.dll ..\..\..\..\bin 1 file(s) copied. jom: C:\QtBuild\qt-everywhere-src-5.15.6\qtBuild\qtbase\src\Makefile [sub-corelib-make_first] Error 2 jom: C:\QtBuild\qt-everywhere-src-5.15.6\qtBuild\qtbase\Makefile [sub-src-make_first] Error 2 jom: C:\QtBuild\qt-everywhere-src-5.15.6\qtBuild\Makefile [module-qtbase-make_first] Error 2
And no output is available or trace file exists.
I think the only way to detect this issue is to use:nmake
instead ofjom
, butnmake
will take a lot of time to compile. -
Call nmake to see the actual error (or jom -j1 which is basically the same).
-
Call nmake to see the actual error (or jom -j1 which is basically the same).
wrote on 18 Sept 2022, 14:19 last edited byOk. I will try it. Thank you.
-
Call nmake to see the actual error (or jom -j1 which is basically the same).
wrote on 18 Sept 2022, 15:06 last edited by Cobra91151So, I have run:
jom -j1
, it leads to this issue:C:\QtBuild\qt-everywhere-src-5.15.6\qtbase\src\corelib\global\qlogging.cpp(1683): error C2589: '(': illegal token on right side of '::' C:\QtBuild\qt-everywhere-src-5.15.6\qtbase\src\corelib\global\qlogging.cpp(1683): error C2062: type 'unknown-type' unexpected C:\QtBuild\qt-everywhere-src-5.15.6\qtbase\src\corelib\global\qlogging.cpp(1683): error C2059: syntax error: ')' jom: C:\QtBuild\qt-everywhere-src-5.15.6\qtBuild\qtbase\src\corelib\Makefile.Debug [.obj\debug\qendian.obj] Error 2 jom: C:\QtBuild\qt-everywhere-src-5.15.6\qtBuild\qtbase\src\corelib\Makefile [debug] Error 2 jom: C:\QtBuild\qt-everywhere-src-5.15.6\qtBuild\qtbase\src\Makefile [sub-corelib-make_first] Error 2 jom: C:\QtBuild\qt-everywhere-src-5.15.6\qtBuild\qtbase\Makefile [sub-src-make_first] Error 2 jom: C:\QtBuild\qt-everywhere-src-5.15.6\qtBuild\Makefile [module-qtbase-make_first] Error 2
Source file:
qlogging.cpp(1683):
static void win_outputDebugString_helper(QStringView message) { const int maxOutputStringLength = 32766; static QBasicMutex m; auto locker = qt_unique_lock(m); // fast path: Avoid string copies if one output is enough if (message.length() <= maxOutputStringLength) { OutputDebugString(reinterpret_cast<const wchar_t *>(message.utf16())); } else { wchar_t *messagePart = new wchar_t[maxOutputStringLength + 1]; for (int i = 0; i < message.length(); i += maxOutputStringLength ) { const int length = std::min(message.length() - i, maxOutputStringLength ); const int len = message.mid(i, length).toWCharArray(messagePart); Q_ASSERT(len == length); messagePart[len] = 0; OutputDebugString(messagePart); } delete[] messagePart; } }
So, for some reason this line (1683) leads to an error:
const int length = std::min(message.length() - i, maxOutputStringLength );
?
I usex86 Native Tools Command Prompt for VS 2019
to build Qt 5.15.6.
It seems some include is missing, so it could not find this std function. Any ideas whystd::min
could lead to this error? Thanks. -
So, I have run:
jom -j1
, it leads to this issue:C:\QtBuild\qt-everywhere-src-5.15.6\qtbase\src\corelib\global\qlogging.cpp(1683): error C2589: '(': illegal token on right side of '::' C:\QtBuild\qt-everywhere-src-5.15.6\qtbase\src\corelib\global\qlogging.cpp(1683): error C2062: type 'unknown-type' unexpected C:\QtBuild\qt-everywhere-src-5.15.6\qtbase\src\corelib\global\qlogging.cpp(1683): error C2059: syntax error: ')' jom: C:\QtBuild\qt-everywhere-src-5.15.6\qtBuild\qtbase\src\corelib\Makefile.Debug [.obj\debug\qendian.obj] Error 2 jom: C:\QtBuild\qt-everywhere-src-5.15.6\qtBuild\qtbase\src\corelib\Makefile [debug] Error 2 jom: C:\QtBuild\qt-everywhere-src-5.15.6\qtBuild\qtbase\src\Makefile [sub-corelib-make_first] Error 2 jom: C:\QtBuild\qt-everywhere-src-5.15.6\qtBuild\qtbase\Makefile [sub-src-make_first] Error 2 jom: C:\QtBuild\qt-everywhere-src-5.15.6\qtBuild\Makefile [module-qtbase-make_first] Error 2
Source file:
qlogging.cpp(1683):
static void win_outputDebugString_helper(QStringView message) { const int maxOutputStringLength = 32766; static QBasicMutex m; auto locker = qt_unique_lock(m); // fast path: Avoid string copies if one output is enough if (message.length() <= maxOutputStringLength) { OutputDebugString(reinterpret_cast<const wchar_t *>(message.utf16())); } else { wchar_t *messagePart = new wchar_t[maxOutputStringLength + 1]; for (int i = 0; i < message.length(); i += maxOutputStringLength ) { const int length = std::min(message.length() - i, maxOutputStringLength ); const int len = message.mid(i, length).toWCharArray(messagePart); Q_ASSERT(len == length); messagePart[len] = 0; OutputDebugString(messagePart); } delete[] messagePart; } }
So, for some reason this line (1683) leads to an error:
const int length = std::min(message.length() - i, maxOutputStringLength );
?
I usex86 Native Tools Command Prompt for VS 2019
to build Qt 5.15.6.
It seems some include is missing, so it could not find this std function. Any ideas whystd::min
could lead to this error? Thanks.@Cobra91151 said in QMake trace issue:
Any ideas why std::min could lead to this error? Thanks.
Yes because of stupid MSVC defines
try to add
#undef min #undef max
after the
#include
statements.
But I wonder why NOMINMAX is not defined when you compile with msvc. -
@Cobra91151 said in QMake trace issue:
Any ideas why std::min could lead to this error? Thanks.
Yes because of stupid MSVC defines
try to add
#undef min #undef max
after the
#include
statements.
But I wonder why NOMINMAX is not defined when you compile with msvc.wrote on 18 Sept 2022, 15:35 last edited by Cobra91151Your solution with
undef
:#undef min #undef max
will work 100%. I tested a simple project using
VS 2019
. Also, I tried to define the#define NOMINMAX
in this test project and it does nothing. Additionally, I clicked go to definition for this define and it lead me to this:Windows.h file:
#if defined(RC_INVOKED) /* Turn off a bunch of stuff to ensure that RC files compile OK. */ #define NOATOM #define NOGDI #define NOGDICAPMASKS #define NOMETAFILE #define NOMINMAX #define NOMSG #define NOOPENFILE #define NORASTEROPS #define NOSCROLL #define NOSOUND #define NOSYSMETRICS #define NOTEXTMETRIC #define NOWH #define NOCOMM #define NOKANJI #define NOCRYPT #define NOMCX #endif
So, it seems that
#define NOMINMAX
will not work untilRC_INVOKED
is defined. I will try again to build Qt 5.15.6. Thanks. -
@Cobra91151 said in QMake trace issue:
Any ideas why std::min could lead to this error? Thanks.
Yes because of stupid MSVC defines
try to add
#undef min #undef max
after the
#include
statements.
But I wonder why NOMINMAX is not defined when you compile with msvc.wrote on 18 Sept 2022, 17:03 last edited byIt's strange, I got a lot of errors:
C:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\shared\TraceLoggingProvider.h(3665): error C2338: The type is not supported by TraceLoggingValue. (compiling source file C:\QtBuild\qt-everywhere-src-5.15.6\qtbase\src\gui\image\qimagereader.cpp) C:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\shared\TraceLoggingProvider.h(3669): note: see reference to class template instantiation '_tlgTypeMapBase<QSize>' being compiled (compiling source file C:\QtBuild\qt-everywhere-src-5.15.6\qtbase\src\gui\image\qimagereader.cpp) C:\QtBuild\qt-everywhere-src-5.15.6\qtBuild\qtbase\src\gui\.tracegen\debug\qtgui_tracepoints_p.h(168): note: see reference to class template instantiation '_tlgTypeMap<const QSize &>' being compiled (compiling source file C:\QtBuild\qt-everywhere-src-5.15.6\qtbase\src\gui\image\qimagereader.cpp) C:\QtBuild\qt-everywhere-src-5.15.6\qtBuild\qtbase\src\gui\.tracegen\debug\qtgui_tracepoints_p.h(168): error C2039: '_tlgTypeType0': is not a member of '_tlgTypeMap<const QSize &>' (compiling source file C:\QtBuild\qt-everywhere-src-5.15.6\qtbase\src\gui\image\qimagereader.cpp) ......... C:\QtBuild\qt-everywhere-src-5.15.6\qtBuild\qtbase\src\gui\.tracegen\debug\qtgui_tracepoints_p.h(435): error C2078: too many initializers (compiling source file C:\QtBuild\qt-everywhere-src-5.15.6\qtbase\src\gui\image\qpixmap.cpp) jom: C:\QtBuild\qt-everywhere-src-5.15.6\qtBuild\qtbase\src\gui\Makefile.Debug [.obj\debug\qbitmap.obj] Error 2 jom: C:\QtBuild\qt-everywhere-src-5.15.6\qtBuild\qtbase\src\gui\Makefile [debug] Error 2 jom: C:\QtBuild\qt-everywhere-src-5.15.6\qtBuild\qtbase\src\Makefile [sub-gui-make_first] Error 2 jom: C:\QtBuild\qt-everywhere-src-5.15.6\qtBuild\qtbase\Makefile [sub-src-make_first] Error 2 jom: C:\QtBuild\qt-everywhere-src-5.15.6\qtBuild\Makefile [module-qtbase-make_first] Error 2 C:\QtBuild\qt-everywhere-src-5.15.6\qtBuild>
Any suggestions? Thanks.
-
What msvc version do you use? 2022? Not sure if 5.15.6 already has all patches for this compiler though.
-
What msvc version do you use? 2022? Not sure if 5.15.6 already has all patches for this compiler though.
wrote on 18 Sept 2022, 18:18 last edited by Cobra91151No. I use
VS 2019
compiler -x86 Native Tools Command Prompt for VS 2019
. It usesWindows Kits\10\include\10.0.22000.0
. Maybe the problem is with the latest kit?Also, I have removed the
-trace "yes"
from configure command, I think it could lead to such errors. -
wrote on 18 Sept 2022, 20:40 last edited by Cobra91151
Ok. So,
-trace "yes"
command leads to this error. By removing this command, the compilation continues until I got the mismatch between the LLVM libs.
I have downloaded them from https://github.com/llvm/llvm-project/releases/tag/llvmorg-14.0.6 for LLVM-14.0.6-win32.exe & LLVM-14.0.6-win64.exe binaries, installed them. SetLLVM_INSTALL_DIR
to the Win32 libs, since I build Qt forx86 Native Tools Command Prompt for VS 2019
.By the way, this error:
jom: C:\QtBuild\qt-everywhere-src-5.15.6\qtdeclarative\src\qml\Makefile.Debug [.generated\debug\RegExpJitTables.h] Error 1
occurs due to the space in the path toPython
:C:\Program Files\Python
. I have installed thePython
without spaces in the path, for example:C:\Python
to fix this error.Trying again...
-
wrote on 23 Sept 2022, 16:58 last edited by Cobra91151
Hello!
I have successfully built the
Qt 5.15.6
forVS 2019 / 2022
for x86/x64 architecture (static/shared). The issue is resolved.
1/14