Details
-
Epic
-
Resolution: Unresolved
-
P2: Important
-
None
-
6.2.0
-
compile-time
-
-
21
-
Team 2 Foundation_Sprint 47, Team 2 Foundation_Sprint 48, Team Two Foundation Sprint 49, Team Two Foundation Sprint 50, Team Two Foundation Sprint 51, Team Two Foundation Sprint 52, Team B Foundation Sprint 53, Team B Foundation Sprint 55, Foundation PM Prioritized
-
436501d87 (dev), 1e852bb49 (dev), cf8548779 (dev), f255960f9 (6.5), 668660079 (6.5), 273863894 (6.5), 408fbd3f2 (dev), 7de02e230 (6.6), c1acb67ff (dev), d31054c31 (dev), b2eb42269 (dev), aec1edfe4 (6.8)
Description
I've built Qt Creator 6 with the same git checkout, same CMake version, same ninja version with Qt 5.15.2 and Qt 6.2.0 with MinGW 8.1 and MSVC 2019 and both suffered a considerable compilation speed decrease. (Windows 10, Antivirus disabled, on a AMD Ryzen 9 3950X 16-Core Processor 3.49 GHz 64GB machine)
No PCH
Compiler | Qt 5.15.2 | Qt 6.2.0 | Speed decrease |
---|---|---|---|
MinGW | 382s | 509s | -33% |
MSVC | 309s | 501s | -62% |
My Qt Creator configure script looks like:
if (CMAKE_ARGC LESS 4) message("Usage cmake -P " ${CMAKE_ARGV2} " <platform e.g. mingw/msvc>") return() endif() if (CMAKE_ARGV3 STREQUAL "mingw") set(QT_PLATFORM mingw81_64) elseif(CMAKE_ARGV3 STREQUAL "msvc") set(QT_PLATFORM msvc2019_64) endif() execute_process(COMMAND ${CMAKE_COMMAND} -D "CMAKE_PREFIX_PATH=c:/Qt/${CMAKE_ARGV3}/${QT_PLATFORM};c:/llvm/${CMAKE_ARGV3}" -D "CMAKE_INSTALL_PREFIX=${CMAKE_CURRENT_LIST_DIR}/install-${CMAKE_ARGV3}" -G Ninja -D CMAKE_BUILD_TYPE=Release -D BUILD_QBS=OFF -D WITH_TESTS=OFF -D BUILD_WITH_PCH=OFF -S repo -B build-${CMAKE_ARGV3} )
The differences between the MinGW build.ninja for compiler flags were:
build src/libs/3rdparty/cplusplus/CMakeFiles/3rd_cplusplus.dir/3rd_cplusplus_autogen/mocs_compilation.cpp.obj: CXX_COMPILER__3rd_cplusplus_Release C$:/Projects/QtCreator/build-mingw/src/libs/3rdparty/cplusplus/3rd_cplusplus_autogen/mocs_compilation.cpp || cmake_object_order_depends_target_3rd_cplusplus - DEFINES = -DCPLUSPLUS_BUILD_LIB -DQT_CONCURRENT_LIB -DQT_CORE_LIB -DQT_CREATOR -DQT_DISABLE_DEPRECATED_BEFORE=0x050900 -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_NO_CAST_TO_ASCII -DQT_NO_DEBUG -DQT_NO_JAVA_STYLE_ITERATORS -DQT_RESTRICTED_CAST_FROM_ASCII -DQT_USE_QSTRINGBUILDER -DQT_WIDGETS_LIB -DRELATIVE_DATA_PATH=\"../share/qtcreator\" -DRELATIVE_DOC_PATH=\"../share/doc/qtcreator\" -DRELATIVE_LIBEXEC_PATH=\"\" -DRELATIVE_PLUGIN_PATH=\"../lib/qtcreator/plugins\" -DUNICODE -DWIN32_LEAN_AND_MEAN -DWINVER=0x0602 -D_CRT_SECURE_NO_WARNINGS -D_SCL_SECURE_NO_WARNINGS -D_UNICODE -D_WIN32_WINNT=0x0602 + DEFINES = -DCPLUSPLUS_BUILD_LIB -DMINGW_HAS_SECURE_API=1 -DQT_CONCURRENT_LIB -DQT_CORE5COMPAT_LIB -DQT_CORE_LIB -DQT_CREATOR -DQT_DISABLE_DEPRECATED_BEFORE=0x050900 -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_NO_CAST_TO_ASCII -DQT_NO_DEBUG -DQT_NO_JAVA_STYLE_ITERATORS -DQT_RESTRICTED_CAST_FROM_ASCII -DQT_USE_QSTRINGBUILDER -DQT_WIDGETS_LIB -DRELATIVE_DATA_PATH=\"../share/qtcreator\" -DRELATIVE_DOC_PATH=\"../share/doc/qtcreator\" -DRELATIVE_LIBEXEC_PATH=\"\" -DRELATIVE_PLUGIN_PATH=\"../lib/qtcreator/plugins\" -DUNICODE -DWIN32 -DWIN32_LEAN_AND_MEAN -DWIN64 -DWINVER=0x0602 -D_CRT_SECURE_NO_WARNINGS -D_ENABLE_EXTENDED_ALIGNED_STORAGE -D_SCL_SECURE_NO_WARNINGS -D_UNICODE -D_WIN32_WINNT=0x0601 -D_WIN32_WINNT=0x0602 -D_WIN64 DEP_FILE = src\libs\3rdparty\cplusplus\CMakeFiles\3rd_cplusplus.dir\3rd_cplusplus_autogen\mocs_compilation.cpp.obj.d - FLAGS = -O3 -DNDEBUG -fvisibility=hidden -fno-keep-inline-dllexport -std=c++17 - INCLUDES = -IC:/Projects/QtCreator/build-mingw/src/libs/3rdparty/cplusplus -IC:/Projects/QtCreator/repo/src/libs/3rdparty/cplusplus -IC:/Projects/QtCreator/build-mingw/src/libs/3rdparty/cplusplus/3rd_cplusplus_autogen/include -IC:/Qt/mingw/mingw81_64/include -IC:/Qt/mingw/mingw81_64/include/QtCore -IC:/Qt/mingw/mingw81_64/./mkspecs/win32-g++ -IC:/Projects/QtCreator/repo/src/libs -IC:/Qt/mingw/mingw81_64/include/QtConcurrent -IC:/Qt/mingw/mingw81_64/include/QtNetwork -IC:/Qt/mingw/mingw81_64/include/QtGui -IC:/Qt/mingw/mingw81_64/include/QtANGLE -IC:/Qt/mingw/mingw81_64/include/QtWidgets -IC:/Projects/QtCreator/repo/src/libs/3rdparty + FLAGS = -O3 -DNDEBUG -fvisibility=hidden -fno-keep-inline-dllexport -Wno-error=invalid-offsetof -std=c++17 + INCLUDES = -IC:/Projects/QtCreator/build-mingw/src/libs/3rdparty/cplusplus -IC:/Projects/QtCreator/repo/src/libs/3rdparty/cplusplus -IC:/Projects/QtCreator/build-mingw/src/libs/3rdparty/cplusplus/3rd_cplusplus_autogen/include -IC:/Qt/mingw/mingw81_64/include/QtCore -IC:/Qt/mingw/mingw81_64/include -IC:/Qt/mingw/mingw81_64/mkspecs/win32-g++ -IC:/Projects/QtCreator/repo/src/libs -IC:/Qt/mingw/mingw81_64/include/QtConcurrent -IC:/Qt/mingw/mingw81_64/include/QtNetwork -IC:/Qt/mingw/mingw81_64/include/QtGui -IC:/Qt/mingw/mingw81_64/include/QtWidgets -IC:/Qt/mingw/mingw81_64/include/QtCore5Compat -IC:/Projects/QtCreator/repo/src/libs/3rdparty OBJECT_DIR = src\libs\3rdparty\cplusplus\CMakeFiles\3rd_cplusplus.dir OBJECT_FILE_DIR = src\libs\3rdparty\cplusplus\CMakeFiles\3rd_cplusplus.dir\3rd_cplusplus_autogen TARGET_COMPILE_PDB = src\libs\3rdparty\cplusplus\CMakeFiles\3rd_cplusplus.dir\ TARGET_PDB = ""
And for MSVC build.ninja:
build src\libs\3rdparty\cplusplus\CMakeFiles\3rd_cplusplus.dir\3rd_cplusplus_autogen\mocs_compilation.cpp.obj: CXX_COMPILER__3rd_cplusplus_Release C$:\Projects\QtCreator\build-msvc\src\libs\3rdparty\cplusplus\3rd_cplusplus_autogen\mocs_compilation.cpp || cmake_object_order_depends_target_3rd_cplusplus - DEFINES = -DCPLUSPLUS_BUILD_LIB -DQT_CONCURRENT_LIB -DQT_CORE_LIB -DQT_CREATOR -DQT_DISABLE_DEPRECATED_BEFORE=0x050900 -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_NO_CAST_TO_ASCII -DQT_NO_DEBUG -DQT_NO_JAVA_STYLE_ITERATORS -DQT_RESTRICTED_CAST_FROM_ASCII -DQT_USE_QSTRINGBUILDER -DQT_WIDGETS_LIB -DRELATIVE_DATA_PATH=\"../share/qtcreator\" -DRELATIVE_DOC_PATH=\"../share/doc/qtcreator\" -DRELATIVE_LIBEXEC_PATH=\"\" -DRELATIVE_PLUGIN_PATH=\"../lib/qtcreator/plugins\" -DUNICODE -DWIN32_LEAN_AND_MEAN -DWINVER=0x0602 -D_CRT_SECURE_NO_WARNINGS -D_SCL_SECURE_NO_WARNINGS -D_UNICODE -D_WIN32_WINNT=0x0602 - FLAGS = /DWIN32 /D_WINDOWS /W3 /GR /EHsc /MD /O2 /Ob2 /DNDEBUG /permissive- /Zc:__cplusplus -std:c++17 - INCLUDES = -IC:\Projects\QtCreator\build-msvc\src\libs\3rdparty\cplusplus -IC:\Projects\QtCreator\repo\src\libs\3rdparty\cplusplus -IC:\Projects\QtCreator\build-msvc\src\libs\3rdparty\cplusplus\3rd_cplusplus_autogen\include -IC:\Qt\msvc\msvc2019_64\include -IC:\Qt\msvc\msvc2019_64\include\QtCore -IC:\Qt\msvc\msvc2019_64\.\mkspecs\win32-msvc -IC:\Projects\QtCreator\repo\src\libs -IC:\Qt\msvc\msvc2019_64\include\QtConcurrent -IC:\Qt\msvc\msvc2019_64\include\QtNetwork -IC:\Qt\msvc\msvc2019_64\include\QtGui -IC:\Qt\msvc\msvc2019_64\include\QtANGLE -IC:\Qt\msvc\msvc2019_64\include\QtWidgets -IC:\Projects\QtCreator\repo\src\libs\3rdparty + DEFINES = -DCPLUSPLUS_BUILD_LIB -DQT_CONCURRENT_LIB -DQT_CORE5COMPAT_LIB -DQT_CORE_LIB -DQT_CREATOR -DQT_DISABLE_DEPRECATED_BEFORE=0x050900 -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_NO_CAST_TO_ASCII -DQT_NO_DEBUG -DQT_NO_JAVA_STYLE_ITERATORS -DQT_RESTRICTED_CAST_FROM_ASCII -DQT_USE_QSTRINGBUILDER -DQT_WIDGETS_LIB -DRELATIVE_DATA_PATH=\"../share/qtcreator\" -DRELATIVE_DOC_PATH=\"../share/doc/qtcreator\" -DRELATIVE_LIBEXEC_PATH=\"\" -DRELATIVE_PLUGIN_PATH=\"../lib/qtcreator/plugins\" -DUNICODE -DWIN32 -DWIN32_LEAN_AND_MEAN -DWIN64 -DWINVER=0x0602 -D_CRT_SECURE_NO_WARNINGS -D_ENABLE_EXTENDED_ALIGNED_STORAGE -D_SCL_SECURE_NO_WARNINGS -D_UNICODE -D_WIN32_WINNT=0x0602 -D_WIN64 + FLAGS = /DWIN32 /D_WINDOWS /W3 /GR /EHsc /MD /O2 /Ob2 /DNDEBUG -Zc:__cplusplus -permissive- -utf-8 -std:c++17 + INCLUDES = -IC:\Projects\QtCreator\build-msvc\src\libs\3rdparty\cplusplus -IC:\Projects\QtCreator\repo\src\libs\3rdparty\cplusplus -IC:\Projects\QtCreator\build-msvc\src\libs\3rdparty\cplusplus\3rd_cplusplus_autogen\include -IC:\Qt\msvc\msvc2019_64\include\QtCore -IC:\Qt\msvc\msvc2019_64\include -IC:\Qt\msvc\msvc2019_64\mkspecs\win32-msvc -IC:\Projects\QtCreator\repo\src\libs -IC:\Qt\msvc\msvc2019_64\include\QtConcurrent -IC:\Qt\msvc\msvc2019_64\include\QtNetwork -IC:\Qt\msvc\msvc2019_64\include\QtGui -IC:\Qt\msvc\msvc2019_64\include\QtWidgets -IC:\Qt\msvc\msvc2019_64\include\QtCore5Compat -IC:\Projects\QtCreator\repo\src\libs\3rdparty OBJECT_DIR = src\libs\3rdparty\cplusplus\CMakeFiles\3rd_cplusplus.dir OBJECT_FILE_DIR = src\libs\3rdparty\cplusplus\CMakeFiles\3rd_cplusplus.dir\3rd_cplusplus_autogen TARGET_COMPILE_PDB = src\libs\3rdparty\cplusplus\CMakeFiles\3rd_cplusplus.dir\ TARGET_PDB = ""
A GitHub Actions build with 0% ccache usually was taking 2 1/2 hours, but now the MSVC build jumped to 4hours.
With PCH
I've compiled with -D BUILD_WITH_PCH=ON and the results are below:
Compiler | Qt 5.15.2 | Qt 6.2.0 | Speed decrease |
---|---|---|---|
MinGW | 354s | 447s | -26% |
MSVC | 213s | 341s | -60% |
With ccache
This compilation was done without pch but with ccache 4.4.1.
-D BUILD_WITH_PCH=OFF -D CMAKE_C_COMPILER_LAUNCHER=ccache -D CMAKE_CXX_COMPILER_LAUNCHER=ccache
Compiler | Qt 5.15.2 cold cache | Qt 5.15.2 warm cace | Qt 6.2.0 cold cache | Qt 6.2.0 warm cache | Speed decrease warm cache |
---|---|---|---|---|---|
MinGW | 559s | 208s | 668s | 230s | -10% |
MSVC | 389s | 91s | 589s | 110s | -20% |
The ccache test would mean that the compilation was skipped and only moc and linking steps were present.
The linker flags for CMakeProjectManager.dll changed like this:
MSVC:
src\plugins\cmakeprojectmanager\CMakeFiles\CMakeProjectManager.dir\cmakeindenter.cpp.obj src\plugins\cmakeprojectmanager\CMakeFiles\CMakeProjectManager.dir\cmakekitinformation.cpp.obj src\plugins\cmakeprojectmanager\CMakeFiles\CMakeProjectManager.dir\cmakelocatorfilter.cpp.obj src\plugins\cmakeprojectmanager\CMakeFiles\CMakeProjectManager.dir\cmakeparser.cpp.obj src\plugins\cmakeprojectmanager\CMakeFiles\CMakeProjectManager.dir\cmakeprocess.cpp.obj src\plugins\cmakeprojectmanager\CMakeFiles\CMakeProjectManager.dir\cmakeproject.cpp.obj src\plugins\cmakeprojectmanager\CMakeFiles\CMakeProjectManager.dir\cmakeprojectimporter.cpp.obj src\plugins\cmakeprojectmanager\CMakeFiles\CMakeProjectManager.dir\cmakeprojectmanager.cpp.obj src\plugins\cmakeprojectmanager\CMakeFiles\CMakeProjectManager.dir\cmakeprojectnodes.cpp.obj src\plugins\cmakeprojectmanager\CMakeFiles\CMakeProjectManager.dir\cmakeprojectplugin.cpp.obj src\plugins\cmakeprojectmanager\CMakeFiles\CMakeProjectManager.dir\cmakesettingspage.cpp.obj src\plugins\cmakeprojectmanager\CMakeFiles\CMakeProjectManager.dir\cmakespecificsettings.cpp.obj src\plugins\cmakeprojectmanager\CMakeFiles\CMakeProjectManager.dir\cmaketool.cpp.obj src\plugins\cmakeprojectmanager\CMakeFiles\CMakeProjectManager.dir\cmaketoolmanager.cpp.obj src\plugins\cmakeprojectmanager\CMakeFiles\CMakeProjectManager.dir\cmaketoolsettingsaccessor.cpp.obj src\plugins\cmakeprojectmanager\CMakeFiles\CMakeProjectManager.dir\configmodel.cpp.obj src\plugins\cmakeprojectmanager\CMakeFiles\CMakeProjectManager.dir\configmodelitemdelegate.cpp.obj src\plugins\cmakeprojectmanager\CMakeFiles\CMakeProjectManager.dir\fileapidataextractor.cpp.obj src\plugins\cmakeprojectmanager\CMakeFiles\CMakeProjectManager.dir\fileapiparser.cpp.obj src\plugins\cmakeprojectmanager\CMakeFiles\CMakeProjectManager.dir\fileapireader.cpp.obj src\plugins\cmakeprojectmanager\CMakeFiles\CMakeProjectManager.dir\projecttreehelper.cpp.obj src\plugins\cmakeprojectmanager\CMakeFiles\CMakeProjectManager.dir\CMakeProjectManager_autogen\EWIEGA46WW\qrc_cmakeproject.cpp.obj || bin\Aggregation.dll bin\CPlusPlus.dll bin\ClangSupport.dll bin\ExtensionSystem.dll bin\KSyntaxHighlighting.dll bin\LanguageUtils.dll bin\ProParser.dll bin\QmlJS.dll bin\Sqlite.dll bin\Utils.dll lib\qtcreator\plugins\Core.dll lib\qtcreator\plugins\CppEditor.dll lib\qtcreator\plugins\ProjectExplorer.dll lib\qtcreator\plugins\QtSupport.dll lib\qtcreator\plugins\ResourceEditor.dll lib\qtcreator\plugins\TextEditor.dll src\libs\3rdparty\cplusplus\3rd_cplusplus src\plugins\cmakeprojectmanager\CMakeProjectManager_autogen src\plugins\cmakeprojectmanager\CMakeProjectManager_autogen_timestamp_deps LANGUAGE_COMPILE_FLAGS = /DWIN32 /D_WINDOWS /W3 /GR /EHsc /MD /O2 /Ob2 /DNDEBUG LINK_FLAGS = /machine:x64 /INCREMENTAL:NO - LINK_LIBRARIES = bin\QmlJS.lib lib\qtcreator\plugins\CppEditor.lib lib\qtcreator\plugins\QtSupport.lib lib\qtcreator\plugins\ResourceEditor.lib bin\LanguageUtils.lib bin\CPlusPlus.lib bin\ClangSupport.lib bin\Sqlite.lib lib\qtcreator\plugins\ProjectExplorer.lib lib\qtcreator\plugins\TextEditor.lib lib\qtcreator\plugins\Core.lib bin\ExtensionSystem.lib bin\Aggregation.lib bin\KSyntaxHighlighting.lib bin\ProParser.lib bin\Utils.lib C:\Qt\msvc\msvc2019_64\lib\Qt5Widgets.lib C:\Qt\msvc\msvc2019_64\lib\Qt5Gui.lib C:\Qt\msvc\msvc2019_64\lib\Qt5Concurrent.lib C:\Qt\msvc\msvc2019_64\lib\Qt5Network.lib C:\Qt\msvc\msvc2019_64\lib\Qt5Core.lib kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib + LINK_LIBRARIES = bin\QmlJS.lib lib\qtcreator\plugins\CppEditor.lib lib\qtcreator\plugins\QtSupport.lib lib\qtcreator\plugins\ResourceEditor.lib bin\LanguageUtils.lib bin\CPlusPlus.lib bin\ClangSupport.lib bin\Sqlite.lib lib\qtcreator\plugins\ProjectExplorer.lib lib\qtcreator\plugins\TextEditor.lib lib\qtcreator\plugins\Core.lib bin\ExtensionSystem.lib bin\Aggregation.lib bin\KSyntaxHighlighting.lib bin\ProParser.lib bin\Utils.lib C:\Qt\msvc\msvc2019_64\lib\Qt6Widgets.lib C:\Qt\msvc\msvc2019_64\lib\Qt6Gui.lib d3d11.lib dxgi.lib dxguid.lib C:\Qt\msvc\msvc2019_64\lib\Qt6Concurrent.lib C:\Qt\msvc\msvc2019_64\lib\Qt6Core5Compat.lib C:\Qt\msvc\msvc2019_64\lib\Qt6Network.lib ws2_32.lib C:\Qt\msvc\msvc2019_64\lib\Qt6Core.lib mpr.lib userenv.lib kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib OBJECT_DIR = src\plugins\cmakeprojectmanager\CMakeFiles\CMakeProjectManager.dir
MinGW:
build lib/qtcreator/plugins/libCMakeProjectManager.dll lib/qtcreator/plugins/libCMakeProjectManager.dll.a: CXX_SHARED_LIBRARY_LINKER__CMakeProjectManager_Release src/plugins/cmakeprojectmanager/CMakeFiles/CMakeProjectManager.dir/CMakeProjectManager_autogen/mocs_compilation.cpp.obj src/plugins/cmakeprojectmanager/CMakeFiles/CMakeProjectManager.dir/builddirparameters.cpp.obj src/plugins/cmakeprojectmanager/CMakeFiles/CMakeProjectManager.dir/cmakeautocompleter.cpp.obj src/plugins/cmakeprojectmanager/CMakeFiles/CMakeProjectManager.dir/cmakebuildconfiguration.cpp.obj src/plugins/cmakeprojectmanager/CMakeFiles/CMakeProjectManager.dir/cmakebuildsystem.cpp.obj src/plugins/cmakeprojectmanager/CMakeFiles/CMakeProjectManager.dir/cmakebuildstep.cpp.obj src/plugins/cmakeprojectmanager/CMakeFiles/CMakeProjectManager.dir/cmakeconfigitem.cpp.obj src/plugins/cmakeprojectmanager/CMakeFiles/CMakeProjectManager.dir/cmakeeditor.cpp.obj src/plugins/cmakeprojectmanager/CMakeFiles/CMakeProjectManager.dir/cmakefilecompletionassist.cpp.obj src/plugins/cmakeprojectmanager/CMakeFiles/CMakeProjectManager.dir/cmakeindenter.cpp.obj src/plugins/cmakeprojectmanager/CMakeFiles/CMakeProjectManager.dir/cmakekitinformation.cpp.obj src/plugins/cmakeprojectmanager/CMakeFiles/CMakeProjectManager.dir/cmakelocatorfilter.cpp.obj src/plugins/cmakeprojectmanager/CMakeFiles/CMakeProjectManager.dir/cmakeparser.cpp.obj src/plugins/cmakeprojectmanager/CMakeFiles/CMakeProjectManager.dir/cmakeprocess.cpp.obj src/plugins/cmakeprojectmanager/CMakeFiles/CMakeProjectManager.dir/cmakeproject.cpp.obj src/plugins/cmakeprojectmanager/CMakeFiles/CMakeProjectManager.dir/cmakeprojectimporter.cpp.obj src/plugins/cmakeprojectmanager/CMakeFiles/CMakeProjectManager.dir/cmakeprojectmanager.cpp.obj src/plugins/cmakeprojectmanager/CMakeFiles/CMakeProjectManager.dir/cmakeprojectnodes.cpp.obj src/plugins/cmakeprojectmanager/CMakeFiles/CMakeProjectManager.dir/cmakeprojectplugin.cpp.obj src/plugins/cmakeprojectmanager/CMakeFiles/CMakeProjectManager.dir/cmakesettingspage.cpp.obj src/plugins/cmakeprojectmanager/CMakeFiles/CMakeProjectManager.dir/cmakespecificsettings.cpp.obj src/plugins/cmakeprojectmanager/CMakeFiles/CMakeProjectManager.dir/cmaketool.cpp.obj src/plugins/cmakeprojectmanager/CMakeFiles/CMakeProjectManager.dir/cmaketoolmanager.cpp.obj src/plugins/cmakeprojectmanager/CMakeFiles/CMakeProjectManager.dir/cmaketoolsettingsaccessor.cpp.obj src/plugins/cmakeprojectmanager/CMakeFiles/CMakeProjectManager.dir/configmodel.cpp.obj src/plugins/cmakeprojectmanager/CMakeFiles/CMakeProjectManager.dir/configmodelitemdelegate.cpp.obj src/plugins/cmakeprojectmanager/CMakeFiles/CMakeProjectManager.dir/fileapidataextractor.cpp.obj src/plugins/cmakeprojectmanager/CMakeFiles/CMakeProjectManager.dir/fileapiparser.cpp.obj src/plugins/cmakeprojectmanager/CMakeFiles/CMakeProjectManager.dir/fileapireader.cpp.obj src/plugins/cmakeprojectmanager/CMakeFiles/CMakeProjectManager.dir/projecttreehelper.cpp.obj src/plugins/cmakeprojectmanager/CMakeFiles/CMakeProjectManager.dir/CMakeProjectManager_autogen/EWIEGA46WW/qrc_cmakeproject.cpp.obj || bin/libAggregation.dll bin/libCPlusPlus.dll bin/libClangSupport.dll bin/libExtensionSystem.dll bin/libKSyntaxHighlighting.dll bin/libLanguageUtils.dll bin/libProParser.dll bin/libQmlJS.dll bin/libSqlite.dll bin/libUtils.dll lib/qtcreator/plugins/libCore.dll lib/qtcreator/plugins/libCppEditor.dll lib/qtcreator/plugins/libProjectExplorer.dll lib/qtcreator/plugins/libQtSupport.dll lib/qtcreator/plugins/libResourceEditor.dll lib/qtcreator/plugins/libTextEditor.dll src/libs/3rdparty/cplusplus/3rd_cplusplus src/plugins/cmakeprojectmanager/CMakeProjectManager_autogen src/plugins/cmakeprojectmanager/CMakeProjectManager_autogen_timestamp_deps LANGUAGE_COMPILE_FLAGS = -O3 -DNDEBUG - LINK_LIBRARIES = bin/libQmlJS.dll.a lib/qtcreator/plugins/libCppEditor.dll.a lib/qtcreator/plugins/libQtSupport.dll.a lib/qtcreator/plugins/libResourceEditor.dll.a bin/libLanguageUtils.dll.a bin/libCPlusPlus.dll.a bin/libClangSupport.dll.a bin/libSqlite.dll.a lib/qtcreator/plugins/libProjectExplorer.dll.a lib/qtcreator/plugins/libTextEditor.dll.a lib/qtcreator/plugins/libCore.dll.a bin/libExtensionSystem.dll.a bin/libAggregation.dll.a bin/libKSyntaxHighlighting.dll.a bin/libProParser.dll.a bin/libUtils.dll.a C:/Qt/mingw/mingw81_64/lib/libQt5Widgets.a C:/Qt/mingw/mingw81_64/lib/libQt5Gui.a C:/Qt/mingw/mingw81_64/lib/libQt5Concurrent.a C:/Qt/mingw/mingw81_64/lib/libQt5Network.a C:/Qt/mingw/mingw81_64/lib/libQt5Core.a -lkernel32 -luser32 -lgdi32 -lwinspool -lshell32 -lole32 -loleaut32 -luuid -lcomdlg32 -ladvapi32 + LINK_LIBRARIES = bin/libQmlJS.dll.a lib/qtcreator/plugins/libCppEditor.dll.a lib/qtcreator/plugins/libQtSupport.dll.a lib/qtcreator/plugins/libResourceEditor.dll.a bin/libLanguageUtils.dll.a bin/libCPlusPlus.dll.a bin/libClangSupport.dll.a bin/libSqlite.dll.a lib/qtcreator/plugins/libProjectExplorer.dll.a lib/qtcreator/plugins/libTextEditor.dll.a lib/qtcreator/plugins/libCore.dll.a bin/libExtensionSystem.dll.a bin/libAggregation.dll.a bin/libKSyntaxHighlighting.dll.a bin/libProParser.dll.a bin/libUtils.dll.a C:/Qt/mingw/mingw81_64/lib/libQt6Widgets.a C:/Qt/mingw/mingw81_64/lib/libQt6Gui.a -ld3d11 -ldxgi -ldxguid C:/Qt/mingw/mingw81_64/lib/libQt6Concurrent.a C:/Qt/mingw/mingw81_64/lib/libQt6Core5Compat.a C:/Qt/mingw/mingw81_64/lib/libQt6Network.a -lws2_32 C:/Qt/mingw/mingw81_64/lib/libQt6Core.a -lmpr -luserenv -lkernel32 -luser32 -lgdi32 -lwinspool -lshell32 -lole32 -loleaut32 -luuid -lcomdlg32 -ladvapi32 OBJECT_DIR = src\plugins\cmakeprojectmanager\CMakeFiles\CMakeProjectManager.dir
Build artifacts
I've uploaded the build artifacts at: QtCreator-build-tests-QTBUG-97601.7z (1.90 GB in size, 19.4 GB unpacked)
Mac
Building with Mac On macOS it twice as bad as well: Attached is the comparison spreadsheet. Data in spreadsheet is recorded with samep project with Qt 5 and Qt 6.
* qmake is used.
* The qmake step is not part of the times recorded (only make)
* C++17 is specified in the project for both Qt 5 and Qt 6.
* Precompiled headers are used in both Qt 5 and Qt 6.
Attachments
Issue Links
- depends on
-
QTBUG-106722 Port away from qglobal.h
- Open
-
QTBUG-98555 Experiment with {{extern template class}}'ing common QtCore templates
- Reported
- relates to
-
QTBUG-99528 QMetaTypeForType::name: msvc constexpr limitation
- Reported
-
QTBUG-89122 Building Qt with cmake needs 15% more space than with qmake
- Closed
-
QTBUG-124376 Slow UI build in Release mode with MSVC
- Closed
-
QTBUG-103289 include moc files [QtRemoteObjects]
- Open
-
QTBUG-99313 Split qglobal.h into a set of header files
- Closed
Gerrit Reviews
For Gerrit Dashboard: QTBUG-97601 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
401329,1 | WIP: Make common case in normalizeTypeFromSignature single pass | dev | qt/qtbase | Status: NEW | -2 | 0 |
424229,4 | qtconnectivity: opt in to reduced includes | dev | qt/qtconnectivity | Status: NEW | -1 | 0 |
424230,1 | qtquick3d: opt in to reduced includes | dev | qt/qtquick3d | Status: NEW | -1 | 0 |