How to build Qt Creator 14.0.2 using Q 6.6.3 and MinGW 11.2
-
I have configured Qt Creator without problems using CMake 3.27.7:
Log:
Could NOT find WrapVulkanHeaders (missing: Vulkan_INCLUDE_DIR) Could NOT find Clang (missing: Clang_DIR) qml/notes_qt6.vert -> notes_qt6.vert.qsb exposed as :/qt/qml/QtCreator/Tracing/notes_qt6.vert.qsb qml/notes_qt6.frag -> notes_qt6.frag.qsb exposed as :/qt/qml/QtCreator/Tracing/notes_qt6.frag.qsb qml/timelineitems_qt6.vert -> timelineitems_qt6.vert.qsb exposed as :/qt/qml/QtCreator/Tracing/timelineitems_qt6.vert.qsb qml/timelineitems_qt6.frag -> timelineitems_qt6.frag.qsb exposed as :/qt/qml/QtCreator/Tracing/timelineitems_qt6.frag.qsb qml/bindingloops_qt6.frag -> bindingloops_qt6.frag.qsb exposed as :/qt/qml/QtCreator/QmlProfiler/bindingloops_qt6.frag.qsb qml/bindingloops_qt6.vert -> bindingloops_qt6.vert.qsb exposed as :/qt/qml/QtCreator/QmlProfiler/bindingloops_qt6.vert.qsb The following packages have been found: * Qt6CoreTools (required version >= 6.6.3) * Qt6Concurrent (required version >= 6.4.3) * Qt6GuiTools (required version >= 6.6.3) * Qt6Gui (required version >= 6.4.3) * Qt6Network (required version >= 6.4.3) * Qt6WidgetsTools (required version >= 6.6.3) * Qt6PrintSupport (required version >= 6.4.3) * Qt6QmlTools (required version >= 6.6.3) * Qt6Qml (required version >= 6.4.3) * Qt6Sql (required version >= 6.4.3) * Qt6Xml (required version >= 6.4.3) * Qt6Core5Compat (required version >= 6.4.3) * Qt6Quick * Qt6QuickWidgets * Qt6Designer * Qt6DesignerComponentsPrivate * Qt6Help * Qt6Svg * Qt6ToolsTools (required version >= 6.6.3) * Qt6Tools * Qt6LinguistTools * Threads * Qt6Test * Qt6SvgWidgets * yaml-cpp, using internal src/libs/3rdparty/yaml-cpp * Qt6ShaderToolsTools (required version >= 6.6.3) * Qt6ShaderTools * Qt6QmlDomPrivate * Python3 -- The following packages have not been found: * Qt6QmlCompilerPlusPrivate * Vulkan * WrapVulkanHeaders * Qt6SerialPort * Clang * Qt6WebEngineWidgets * Qt6Charts * Qt6QmlCompilerPrivate * Qt6Quick3D * Qt6Quick3DAssetImport * Qt6Quick3DParticles * Qt6Quick3DAssetUtils * Qt6 -- The following features have been enabled: * Build QmlDesigner and related code (only if Qt is 6.5.4 or newer) * Library 3rd_cplusplus * Library KSyntaxHighlighting * Library libvterm * Library QrCodeGenerator, with CONDITION TARGET Qt6::Quick AND TARGET Qt6::Svg * Library qtkeychain * CredentialStore keychain support, with CONDITION USE_CREDENTIAL_STORE * Library lua546 * Executable winpty-agent * Library winpty * Library Nanotrace * Library AdvancedDockingSystem, with CONDITION TARGET Qt::QuickWidgets * Library Aggregation * Library CPlusPlus * Library ExtensionSystem * Library GLSL * Library LanguageServerProtocol * Library LanguageUtils * Library Modeling * Library QmlDebug * Library QmlEditorWidgets * Library QmlJS * Library Utils * Executable qtcreator_ctrlc_stub * Library Spinner * Library Tasking * Library TerminalLib * Library Tracing, with CONDITION TARGET Qt6::ShaderTools AND TARGET Qt::Quick * Library SqliteInternal * Library Sqlite * Library QmlPuppetCommunication * Library designerintegrationv2 * Library ProParser * Library shared_help * Plugin Core * Plugin Lua * Plugin TextEditor * Plugin ExtensionManager * Plugin HelloWorld * Plugin ImageViewer * Plugin Marketplace * Plugin ScreenRecorder * Plugin UpdateInfo * Plugin Welcome * Plugin BinEditor * Executable cpaster * Plugin CodePaster * Plugin DiffEditor * Plugin EmacsKeys * Plugin Macros * Plugin ProjectExplorer * Plugin SilverSearcher * Plugin Axivion * Plugin CompilerExplorer * Plugin CppEditor * Plugin Haskell * Plugin Help, with CONDITION TARGET Qt::Help * Plugin ResourceEditor * Plugin Nim * Plugin Conan * Plugin SafeRenderer * Plugin Terminal * Plugin Vcpkg * Plugin ClassView * Plugin GLSLEditor * Plugin ModelEditor * Plugin QtSupport * Plugin Todo * Plugin VcsBase * Plugin AutotoolsProjectManager * Plugin Bazaar * Plugin Beautifier * Plugin ClearCase * Plugin CVS * Plugin Designer, with CONDITION TARGET Qt::DesignerComponentsPrivate AND TARGET Qt::Designer * Plugin Docker * Plugin FakeVim * Plugin Fossil * Plugin GenericProjectManager * Plugin Git * Plugin Mercurial * Plugin MesonProjectManager * Plugin Perforce * Plugin QmakeProjectManager * Plugin QmlJSTools * Plugin ScxmlEditor * Plugin Subversion * Plugin CompilationDatabaseProjectManager * Plugin LanguageClient * Plugin LuaLanguageClient, with CONDITION TARGET Lua * Plugin QmlDesignerBase, with CONDITION TARGET Qt::QuickWidgets * Plugin WebAssembly * Plugin Debugger * Plugin Coco * Plugin Copilot * Plugin GitLab * Plugin QmlProjectManager, with CONDITION TARGET Qt::QuickWidgets * Library QmlProjectManagerLib * Plugin Python * Plugin CMakeProjectManager * Plugin Android * Plugin AutoTest * Plugin BareMetal * Plugin ClangCodeModel * Library yaml-cpp * Plugin ClangTools, with CONDITION TARGET yaml-cpp * Plugin Cppcheck * Plugin IncrediBuild * Plugin Ios * Plugin QmlJSEditor * Plugin QmlPreview, with CONDITION TARGET QmlProjectManager * Plugin QmlProfiler, with CONDITION TARGET Tracing AND TARGET Qt6::ShaderTools * Plugin RemoteLinux * Plugin Valgrind * Plugin PerfProfiler, with CONDITION TARGET Tracing * Plugin QbsProjectManager * Plugin CtfVisualizer, with CONDITION TARGET Tracing * Plugin Squish * Plugin Boot2Qt * Library QmlDesignerUtils * Library QmlDesignerCore, with CONDITION TARGET QmlDesignerBase AND TARGET Qt6::QmlPrivate AND TARGET Qt6::QmlDomPrivate AND TARGET Qt6::QmlCompilerPrivate * Plugin QmlDesigner, with CONDITION TARGET QmlDesignerCore AND TARGET Qt::QuickWidgets AND TARGET Qt::Svg * Plugin assetexporterplugin, with CONDITION TARGET QmlDesigner * Plugin componentsplugin, with CONDITION TARGET QmlDesigner * Plugin qmlpreviewplugin, with CONDITION TARGET QmlDesigner * Plugin qtquickplugin, with CONDITION TARGET QmlDesigner * Plugin QmlDesignerLite, with CONDITION TARGET QmlDesigner * Plugin EffectComposer, with CONDITION TARGET Qt::Quick AND TARGET QtCreator::QmlDesigner * Plugin StudioWelcome, with CONDITION TARGET Qt::QuickWidgets AND TARGET QtCreator::QmlDesigner * Plugin Insight, with CONDITION TARGET QtCreator::QmlDesigner * Plugin Qnx * Plugin McuSupport * Plugin QtApplicationManagerIntegration * Executable qtcreator * Executable cplusplus-keywordgen * Executable buildoutputparser * Executable cplusplus-ast2png * Executable cplusplus-frontend * Executable cplusplus-mkvisitor * Executable cplusplus-update-frontend * Executable qtcreator_processlauncher * Executable qml2puppet, with CONDITION TARGET Qt::Quick * Executable qtcdebugger * Executable qtc-askpass * Executable qtpromaker * Library sdktoolLib * Executable sdktool * Executable valgrind-fake * Executable win64interrupt * Executable qtcreator_process_stub -- The following features have been disabled: * Build documentation * Build online documentation * Build documentation by default * Build tests * Build with sanitize, SANITIZE_FLAGS='' * Build with Crashpad * Sqlite tracing * Build Qbs * Plugin SerialTerminal, with CONDITION TARGET Qt::SerialPort * Native WebKit help viewer, with CONDITION FWWebKit AND FWAppKit * QtWebEngine help viewer, with CONDITION BUILD_HELPVIEWERBACKEND_QTWEBENGINE AND TARGET Qt::WebEngineWidgets * litehtml help viewer, with CONDITION TARGET qlitehtml * Treat warnings as errors in QmlDesigner * Plugin ClangFormat, with CONDITION TARGET clangFormat AND LLVM_PACKAGE_VERSION VERSION_GREATER_EQUAL 14.0.0 AND ( QTC_CLANG_BUILDMODE_MATCH OR CLANGTOOLING_LINK_CLANG_DYLIB ) * Plugin AppStatisticsMonitor, with CONDITION TARGET Qt6::Charts * Qml Designer Lite * Image cache tracing * Model tracing * Meta info tracing * Qt Quick 3D support, with CONDITION TARGET Qt::Quick3D * Qt Quick 3D asset import, with CONDITION TARGET Qt::Quick3DAssetImport * Qt Quick 3D particles, with CONDITION TARGET Qt::Quick3DParticles * Qt Quick 3D asset utils, with CONDITION TARGET Qt::Quick3DAssetUtils * multilanguage-support in qml2puppet, with CONDITION TARGET QtCreator::multilanguage-support * Executable qtcreator_crash_handler, with CONDITION UNIX AND NOT APPLE AND ( CMAKE_BUILD_TYPE STREQUAL Debug ) * Include developer documentation Configuring done (13.9s) Generating done (19.2s)
But nothing happens when I try to build it:
E:\Temp\qt-creator-14.0.2\dist>cmake --build dist -j4 Built target copy_changelog_to_builddir
-
Oh, sorry! I should run it like this:
cmake --build . -j4
or:
E:\Temp\qt-creator-14.0.2\dist>cd .. E:\Temp\qt-creator-14.0.2>cmake --build dist -j4
-
The building was stopped with errors. For example the first errors:
[ 35%] Building CXX object src/plugins/lua/CMakeFiles/Lua.dir/bindings/settings.cpp.obj C:/Qt/Tools/mingw1120_64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/bin/as.exe: CMakeFiles\Lua.dir\bindings\gui.cpp.obj: too many sections (36684) C:\Users\8OBSER~1\AppData\Local\Temp\ccK77WId.s: Assembler messages: C:\Users\8OBSER~1\AppData\Local\Temp\ccK77WId.s: Fatal error: can't write 79 bytes to section .text of CMakeFiles\Lua.dir\bindings\gui.cpp.obj: 'file too big' C:/Qt/Tools/mingw1120_64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/bin/as.exe: CMakeFiles\Lua.dir\bindings\gui.cpp.obj: too many sections (36684) C:\Users\8OBSER~1\AppData\Local\Temp\ccK77WId.s: Fatal error: CMakeFiles\Lua.dir\bindings\gui.cpp.obj: file too big mingw32-make.exe[2]: *** [src\plugins\lua\CMakeFiles\Lua.dir\build.make:185: src/plugins/lua/CMakeFiles/Lua.dir/bindings/gui.cpp.obj] Error 1 mingw32-make.exe[2]: *** Waiting for unfinished jobs....
It says
gui.cpp.obj: 'file too big'
. I think it means that I don't have enough space on my laptop. Thedist
folder has 2.64 GB now. I build on the E drive. It has 7.85 GB of free space. The C drive has 5.37 GB. How many GBs should I have? -
@8Observer8 said in How to build Qt Creator 14.0.2 using Q 6.6.3 and MinGW 11.2:
How many GBs should I have?
To build QtCreator quite a lot I think. Can't tell you exactly.
Having only 5GB free on C drive is anyway problematic (temp folder for example). -
Qt Creator is being built with MinGW at https://github.com/qt-creator/qt-creator/actions and the MinGW builds are green.
Note that that is a Release build. The Debug build sometimes has issues, and one has to add a compiler option.
We have fixed this in master, see https://code.qt.io/cgit/qt-creator/qt-creator.git/tree/src/plugins/lua/CMakeLists.txt#n63
if (MSVC) # Prevent fatal error C1128 target_compile_options(Lua PRIVATE /bigobj) endif() if (MINGW) target_compile_options(Lua PRIVATE "-Wa,-mbig-obj") endif()
-
I have added the
if (MINGW)
here:E:\Temp\qt-creator-14.0.2\src\plugins\lua\CMakeLists.txt
:if (MSVC) # Prevent fatal error C1128 set_property(SOURCE bindings/settings.cpp PROPERTY COMPILE_FLAGS /bigobj) endif() if (MINGW) target_compile_options(Lua PRIVATE "-Wa,-mbig-obj") endif()
Error:
Fatal error: CMakeFiles\Lua.dir\bindings\settings.cpp.obj: file too big
here[ 37%] Automatic RCC for diffeditor.qrc C:/Qt/Tools/mingw1120_64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/bin/as.exe: [ 37%] CMakeFiles\Lua.dir\bindings\settings.cpp.objBuilding CXX object src/plugins/diffeditor/CMakeFiles/DiffEditor.dir/DiffEditor_autogen/mocs_compilation.cpp.obj: section .xdata$_ZN3sol6detail18ctti_get_type_nameIPN5Utils11EnvironmentEiEENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEv: string table overflow at offset 10000103 C:\Users\8OBSER~1\AppData\Local\Temp\ccQzTMVu.s: Assembler messages: C:\Users\8OBSER~1\AppData\Local\Temp\ccQzTMVu.s: Fatal error: CMakeFiles\Lua.dir\bindings\settings.cpp.obj: file too big [ 37%] Building CXX object src/plugins/cpaster/CMakeFiles/CodePaster.dir/frontend/argumentscollector.cpp.obj mingw32-make.exe[2]: *** [src\plugins\lua\CMakeFiles\Lua.dir\build.make:270: src/plugins/lua/CMakeFiles/Lua.dir/bindings/settings.cpp.obj] Error 1 mingw32-make.exe[1]: *** [CMakeFiles\Makefile2:6415: src/plugins/lua/CMakeFiles/Lua.dir/all] Error 2 mingw32-make.exe[1]: *** Waiting for unfinished jobs.... [ 37%] Building CXX object src/plugins/diffeditor/CMakeFiles/DiffEditor.dir/diffeditor.cpp.obj ... [ 37%] Building CXX object src/plugins/diffeditor/CMakeFiles/DiffEditor.dir/DiffEditor_autogen/EWIEGA46WW/qrc_diffeditor.cpp.obj AutoMoc: E:/Temp/qt-creator-14.0.2/src/plugins/projectexplorer/sanitizerparser.cpp: note: No relevant classes found. No output generated. [ 37%] Built target ProjectExplorer_autogen [ 37%] Linking CXX shared library ..\..\..\lib\qtcreator\plugins\libDiffEditor.dll [ 37%] Built target DiffEditor mingw32-make.exe: *** [Makefile:155: all] Error 2
-
I've start from the beginning. My steps:
- I've made: "File" > "Delete Cache" in the CMake-GUI
- I've deleted the
qt-creator-14.0.2
folder and unzipped theqt-creator-14.0.2.zip
file - I've edit this
E:\Temp\qt-creator-14.0.2\src\plugins\lua\CMakeLists.txt
file. I've added this code to it:
if (MINGW) target_compile_options(Lua PRIVATE "-Wa,-mbig-obj") endif()
- I've clicked the
Configure
button - I've set the
Qt6_DIR
toC:/Qt/6.6.3/mingw_64/lib/cmake/Qt6
- I've clicked on the
Configure
button again and again to make it white instead of red - I've clicked on the
Generate
. It was finished without errors - I've pressed the
Generate
button again - I've moved to the
E:/Temp/qt-creator-14.0.2/build
location in CMD - I've typed the
cmake --build . -j4
The building was finished after 15 minutes with the message:
ar.exe: could not create temporary file whilst writing archive: no more archived files
[ 9%] Linking CXX static library ..\..\..\..\bin\liblua546.a C:\Qt\Tools\mingw1120_64\bin\ar.exe: could not create temporary file whilst writing archive: no more archived files mingw32-make.exe[2]: *** [src\libs\3rdparty\lua\CMakeFiles\lua546.dir\build.make:665: bin/liblua546.a] Error 1 mingw32-make.exe[1]: *** [CMakeFiles\Makefile2:3847: src/libs/3rdparty/lua/CMakeFiles/lua546.dir/all] Error 2 mingw32-make.exe[1]: *** Waiting for unfinished jobs.... [ 9%] Building CXX object src/libs/3rdparty/cplusplus/CMakeFiles/3rd_cplusplus.dir/Type.cpp.obj [ 9%] Built target winpty [ 9%] Building CXX object src/libs/3rdparty/cplusplus/CMakeFiles/3rd_cplusplus.dir/TypeVisitor.cpp.obj [ 9%] Built target 3rd_cplusplus [ 9%] Linking CXX shared library ..\..\..\bin\libNanotrace.dll [ 9%] Built target Nanotrace mingw32-make.exe: *** [Makefile:155: all] Error 2
Full log: https://gist.github.com/8Observer8/894bb0f4016bf582ea1d691642aa917c
-
Try using the Ninja CMake generator. Alternatively you can disable the Lua plugin if you don't need it.
-DBUILD_PLUGIN_LUA:BOOL=OFF