Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Installation and Deployment
  4. Failing to build Qt 6.6.2 from source on Windows 10 with MinGW64 compiler

Failing to build Qt 6.6.2 from source on Windows 10 with MinGW64 compiler

Scheduled Pinned Locked Moved Unsolved Installation and Deployment
buildqt6mingw 64 bit
19 Posts 4 Posters 4.2k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • K kyrlon
    12 Mar 2024, 02:59

    I am having trouble building Qt 6.6.2 from source on my Windows 10 system following the steps provided from Qt for Windows - Building from Source. Because my internet connection is inconsistent, I cannot rely on the installer to install the Qt framework, therefore I am building from source. Although I am aware of various compilers (e.g. MSVC), I am only using MinGW in the hopes that this will be repeated in the future. My current system info are the following:

    • OS: Windows 10
    • Build Tools
      • Cmake Version: 3.29 (Installed via installer)
      • Ninja: N/A
      • Python: 3.11.8 (Installed via installer; python is added to path)
    • Compilers: ONLY MinGW64
      • Download MinGW and add to PATH: *C:\Program Files\mingw64\bin*
      • Winlibs standalone build
      • UCRT runtime
      • GCC 13.2.0 (with POSIX threads) + LLVM/Clang/LLD/LLDB 17.0.6 + MinGW-w64 11.0.1 (UCRT) - release 5

    I will walk you through the steps I took to encounter my current issue in with the system configuration mentioned above where hopefully someone can point out possible places where I might have made a mistake or run into difficulties.

    Attempt #1 for building on windows

    After configuring my Windows 10 I did the following:

    1. Downloaded the source file and extracted in Downloads folder
    2. created build directory in source folder and then cd into folder:
      C:\Users\kyrlon\Downloads\qt-everywhere-src-6.6.2\build
    3. ran the configure.bat like the following:
    PS C:\Users\kyrlon\Downloads\qt-everywhere-src-6.6.2\build> ..\configure.bat
    

    At step 3 is where I got my first issue with building from source with the error message stating a missing reference regarding the imported LLVMDemangle. I've added the output from Step 3 in the pastebin link with line numbers to make it easier to reference topics: https://pastebin.com/UEDRXRBA

    From the output on line 0164, it mentions that it cannot find a missing static library "C:/Program Files/mingw64/lib/libLLVMDemangle.dll.a". I could not find this file and with a quick google search this stack-overflow post was the only mention of a similar error. I am not familiar with shared libraries on Windows. Searching the folder I came across libLLVMDemangle.dll file in C:\Program Files\mingw64\bin. Still no idea what to do at this point, grudgingly I resorted to asking chatgpt on converting a .dll to a .dll.a and the response was to first generate a .def file with the gendef tool in the bin/ folder of minGW and then convert that file to a dll.a with the dlltool. I made the file that was originally stated to be missing "C:/Program Files/mingw64/lib/libLLVMDemangle.dll.a" and got more errors of missing static libraries. I ended up making a python script to convert missing static libraries from the cmake file C:/Program Files/mingw64/lib/cmake/llvm/LLVMConfig.cmake with the following commands:

    import linecache
    from pathlib import Path
    import subprocess, shutil
    
    bin_dir = Path(r"C:\Program Files\mingw64\bin")
    lib_dir = Path(r"C:\Program Files\mingw64\lib")
    lib = linecache.getline(r"C:/Program Files/mingw64/lib/cmake/llvm/LLVMExports.cmake", 22)
    lib = lib.split("ITEMS")
    lib = lib[1:][0]
    lib = lib.split(")")[0]
    lib = lib.split()
    
    tmp = Path(__file__).resolve().parent
    tmp = tmp / "tmp"
    tmp.mkdir(parents=True, exist_ok=True)
    
    for l in lib:
        if (p:=Path(bin_dir / f"lib{l}.dll")).is_file():
            shutil.copy(p, tmp/p.name)
            cmd1 = f"gendef {str(tmp/p.name)}"
            subprocess.run(cmd1.split(), shell=True, cwd=tmp)
            cmd2 = f"dlltool -d {str(p.stem)}.def -l {str(p.stem)}.dll.a"
            subprocess.run(cmd2.split(), shell=True, cwd=tmp)
            shutil.copy(str(tmp/p.stem)+".dll.a", lib_dir)
    
    1. Run (AS ADMIN) the code block above to generate static libraries for cmake expected targets.

    Attempt # 2 for building on windows

    1. After generated static libraries, cleared out the build folder and ran the configure.bat like the following:
    PS C:\Users\kyrlon\Downloads\qt-everywhere-src-6.6.2\build> ..\configure.bat
    

    Further, but came across missing static libraries for clang C:\Program Files\mingw64\lib\cmake\clang\ClangTargets.cmake this time. In similar fashion, a python script was made to generate static libraries:

    import linecache
    from pathlib import Path
    import subprocess, shutil
    bin_dir = Path(r"C:\Program Files\mingw64\bin")
    lib_dir = Path(r"C:\Program Files\mingw64\lib")
    lib = linecache.getline(r"C:\Program Files\mingw64\lib\cmake\clang\ClangTargets.cmake", 22)
    lib = lib.split("ITEMS")
    lib = lib[1:][0]
    lib = lib.split(")")[0]
    lib = lib.split()
    
    tmp = Path(__file__).resolve().parent
    tmp = tmp / "tmp_clang"
    tmp.mkdir(parents=True, exist_ok=True)
    
    for l in lib:
        if (p:=Path(bin_dir / f"lib{l}.dll")).is_file():
            shutil.copy(p, tmp/p.name)
            cmd1 = f"gendef {str(tmp/p.name)}"
            subprocess.run(cmd1.split(), shell=True, cwd=tmp)
            cmd2 = f"dlltool -d {str(p.stem)}.def -l {str(p.stem)}.dll.a"
            subprocess.run(cmd2.split(), shell=True, cwd=tmp)
            shutil.copy(str(tmp/p.stem)+".dll.a", lib_dir)
    
    1. Run (AS ADMIN) the code block above to generate static libraries for cmake expected targets.

    Attempt # 3 for building on windows

    1. After generated static libraries, cleared out the build folder and ran the configure.bat like the following:
    PS C:\Users\kyrlon\Downloads\qt-everywhere-src-6.6.2\build> ..\configure.bat
    

    This time I got an error stating that it was missing a python module html5lib.

    1. Fix python error by doing a global pip install html5lib to system.

    Attempt # 4 for building windows

    1. After generated static libraries, cleared out the build folder and ran the configure.bat like the following:
    PS C:\Users\kyrlon\Downloads\qt-everywhere-src-6.6.2\build> ..\configure.bat
    

    Now this is the output from the command when Configuring Done (with alot of warnings): https://pastebin.com/6BhtMFcY

    1. Run the command cmake --build . --parallel
      Now after step 3, I get an error in this output: https://pastebin.com/m5rmQp0T

    Here it states that no such file or directory for qwindowsmediadevices_p.h
    I believe that at this point, I would be changing the files that ought to have been created. If anyone has an idea on next steps to attempt, I am open for suggestions!

    C Online
    C Online
    cristian-adam
    wrote on 12 Mar 2024, 14:54 last edited by
    #2

    Have a look at https://wiki.qt.io/MinGW for the MinGW toolchain used to build Qt.

    Qt uses the releases from https://github.com/niXman/mingw-builds-binaries/releases

    The winlib's MinGW is not supported. You need to ask winlib for support.

    K 1 Reply Last reply 12 Mar 2024, 17:25
    1
    • K kyrlon referenced this topic on 12 Mar 2024, 15:15
    • C cristian-adam
      12 Mar 2024, 14:54

      Have a look at https://wiki.qt.io/MinGW for the MinGW toolchain used to build Qt.

      Qt uses the releases from https://github.com/niXman/mingw-builds-binaries/releases

      The winlib's MinGW is not supported. You need to ask winlib for support.

      K Offline
      K Offline
      kyrlon
      wrote on 12 Mar 2024, 17:25 last edited by kyrlon 3 Dec 2024, 17:26
      #3

      @cristian-adam Thanks for pointing that out. As mentioned by your comment, I was using an incompatible version of minGW. I then downloaded the compatible MinGW and added to PATH

      Attempt # 5 for building on windows

      1. Cleared out the build folder and ran the configure.bat like the following:
      PS C:\Users\kyrlon\Downloads\qt-everywhere-src-6.6.2\build> ..\configure.bat
      
      1. Ran the command cmake --build . --parallel
        Got a bunch of errors stating that it could not remove certain files with what it looks like mingw-32-make.exe: https://pastebin.com/N1Kctyf6

      2. Ran the command cmake --build . --parallel
        Got a bunch of errors again this time failing at 10% with just Error2: https://pastebin.com/j6hUEWeX

      Attempt # 6 for building on windows

      Decided to use ninja to see if there is any difference with a different build tool added since it was recommended, but not required. Downloaded ninja v1.11.1 and added to PATH

      1. Cleared out the build folder and ran the configure.bat like the following:
      PS C:\Users\kyrlon\Downloads\qt-everywhere-src-6.6.2\build> ..\configure.bat
      
      1. Ran the command cmake --build . --parallel
        Got a bunch of no outputs generated. Eventually got a FAILED:
      FAILED: qtmultimedia/src/plugins/multimedia/windows/CMakeFiles/QWindowsMediaPlugin.dir/qwindowsintegration.cpp.obj
      

      Here is a log output for this attempt: https://pastebin.com/sVUR1jGa
      This error is similar to Attempt #4, and I am not sure why this file would be missing.

      C Christian EhrlicherC 2 Replies Last reply 12 Mar 2024, 17:42
      0
      • K kyrlon
        12 Mar 2024, 17:25

        @cristian-adam Thanks for pointing that out. As mentioned by your comment, I was using an incompatible version of minGW. I then downloaded the compatible MinGW and added to PATH

        Attempt # 5 for building on windows

        1. Cleared out the build folder and ran the configure.bat like the following:
        PS C:\Users\kyrlon\Downloads\qt-everywhere-src-6.6.2\build> ..\configure.bat
        
        1. Ran the command cmake --build . --parallel
          Got a bunch of errors stating that it could not remove certain files with what it looks like mingw-32-make.exe: https://pastebin.com/N1Kctyf6

        2. Ran the command cmake --build . --parallel
          Got a bunch of errors again this time failing at 10% with just Error2: https://pastebin.com/j6hUEWeX

        Attempt # 6 for building on windows

        Decided to use ninja to see if there is any difference with a different build tool added since it was recommended, but not required. Downloaded ninja v1.11.1 and added to PATH

        1. Cleared out the build folder and ran the configure.bat like the following:
        PS C:\Users\kyrlon\Downloads\qt-everywhere-src-6.6.2\build> ..\configure.bat
        
        1. Ran the command cmake --build . --parallel
          Got a bunch of no outputs generated. Eventually got a FAILED:
        FAILED: qtmultimedia/src/plugins/multimedia/windows/CMakeFiles/QWindowsMediaPlugin.dir/qwindowsintegration.cpp.obj
        

        Here is a log output for this attempt: https://pastebin.com/sVUR1jGa
        This error is similar to Attempt #4, and I am not sure why this file would be missing.

        C Online
        C Online
        cristian-adam
        wrote on 12 Mar 2024, 17:42 last edited by
        #4

        Qt 6.6.2 is being released with a MinGW build.

        At https://testresults.qt.io/coin/integration/qt/qtmultimedia/tasks/1707528820 I can see a qtmultimedia 6.6.2 integration.

        windows-10_22h2-mingw11 raw log has:

        agent:2024/02/10 00:14:45 build.go:795: Executing instruction 59 of 97 - ExecuteCommand
        agent:2024/02/10 00:14:45 build.go:427: [\Users\qt\work\install\bin\qt-configure-module.bat \Users\qt\work\qt\qtmultimedia -- -DFFMPEG_DIR=C:\ffmpeg-n6.1\build\mingw\installed -DFEATURE_native_grpc=OFF -DCMAKE_IGNORE_PREFIX_PATH=C:/strawberry/c -DQT_BUILD_TESTS=OFF -DCMAKE_AUTOGEN_VERBOSE=ON -DCMAKE_MESSAGE_LOG_LEVEL=STATUS -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache] 1h40m0s 20m0s false false
        agent:2024/02/10 00:14:45 build.go:404: 'C:\Users\qt\work\install\bin\\qt-cmake-private.bat' '-DFFMPEG_DIR=C:\ffmpeg-n6.1\build\mingw\installed' '-DFEATURE_native_grpc=OFF' '-DCMAKE_IGNORE_PREFIX_PATH=C:/strawberry/c' '-DQT_BUILD_TESTS=OFF' '-DCMAKE_AUTOGEN_VERBOSE=ON' '-DCMAKE_MESSAGE_LOG_LEVEL=STATUS' '-DCMAKE_C_COMPILER_LAUNCHER=sccache' '-DCMAKE_CXX_COMPILER_LAUNCHER=sccache' '-DQT_INTERNAL_CALLED_FROM_CONFIGURE:BOOL=TRUE' 'C:/Users/qt/work/qt/qtmultimedia'
        agent:2024/02/10 00:14:48 build.go:404: -- The CXX compiler identification is GNU 11.2.0
        agent:2024/02/10 00:14:51 build.go:404: -- The C compiler identification is GNU 11.2.0
        agent:2024/02/10 00:14:51 build.go:404: -- Detecting CXX compiler ABI info
        agent:2024/02/10 00:14:52 build.go:404: -- Detecting CXX compiler ABI info - done
        agent:2024/02/10 00:14:52 build.go:404: -- Check for working CXX compiler: C:/MINGW1120/mingw64/bin/g++.exe - skipped
        agent:2024/02/10 00:14:52 build.go:404: -- Detecting CXX compile features
        agent:2024/02/10 00:14:52 build.go:404: -- Detecting CXX compile features - done
        agent:2024/02/10 00:14:52 build.go:404: -- Detecting C compiler ABI info
        agent:2024/02/10 00:14:52 build.go:404: -- Detecting C compiler ABI info - done
        agent:2024/02/10 00:14:53 build.go:404: -- Check for working C compiler: C:/MINGW1120/mingw64/bin/gcc.exe - skipped
        agent:2024/02/10 00:14:53 build.go:404: -- Detecting C compile features
        agent:2024/02/10 00:14:53 build.go:404: -- Detecting C compile features - done
        agent:2024/02/10 00:14:53 build.go:404: -- Performing Test CMAKE_HAVE_LIBC_PTHREAD
        agent:2024/02/10 00:14:53 build.go:404: -- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
        agent:2024/02/10 00:14:53 build.go:404: -- Found Threads: TRUE  
        agent:2024/02/10 00:14:54 build.go:404: -- Performing Test HAVE_STDATOMIC
        agent:2024/02/10 00:14:54 build.go:404: -- Performing Test HAVE_STDATOMIC - Success
        agent:2024/02/10 00:14:54 build.go:404: -- Found WrapAtomic: TRUE  
        agent:2024/02/10 00:14:57 build.go:404: -- CMAKE_BUILD_TYPE was set to: 'RelWithDebInfo'
        agent:2024/02/10 00:14:57 build.go:404: -- Checking for feature set changes
        agent:2024/02/10 00:14:57 build.go:404: -- CMAKE_STRIP (original): C:/MINGW1120/mingw64/bin/strip.exe
        agent:2024/02/10 00:14:57 build.go:404: -- Performing Test strip --keep-section
        agent:2024/02/10 00:14:58 build.go:404: -- Performing Test strip --keep-section - TRUE
        agent:2024/02/10 00:14:58 build.go:404: -- CMAKE_STRIP (used by Qt): C:/Users/qt/work/qt/qtmultimedia_build/./bin/qt-internal-strip.bat
        agent:2024/02/10 00:14:58 build.go:404: -- Could NOT find ALSA (missing: ALSA_LIBRARY ALSA_INCLUDE_DIR) 
        agent:2024/02/10 00:14:59 build.go:404: -- Could NOT find AVFoundation (missing: AVFoundation_LIBRARY) 
        agent:2024/02/10 00:14:59 build.go:404: -- Could NOT find GLIB2 (missing: GLIB2_LIBRARIES GTHREAD2_LIBRARIES GLIB2_INCLUDE_DIRS) 
        agent:2024/02/10 00:14:59 build.go:404: -- Could NOT find GLIB2 (missing: GLIB2_LIBRARIES GTHREAD2_LIBRARIES GLIB2_INCLUDE_DIRS) 
        agent:2024/02/10 00:15:00 build.go:404: -- Could NOT find GLIB2 (missing: GLIB2_LIBRARIES GTHREAD2_LIBRARIES GLIB2_INCLUDE_DIRS) 
        agent:2024/02/10 00:15:00 build.go:404: -- Could NOT find GLIB2 (missing: GLIB2_LIBRARIES GTHREAD2_LIBRARIES GLIB2_INCLUDE_DIRS) 
        agent:2024/02/10 00:15:00 build.go:404: -- Could NOT find MMRendererCore (missing: MMRendererCore_LIBRARY) 
        agent:2024/02/10 00:15:00 build.go:404: -- Could NOT find MMRenderer (missing: MMRenderer_LIBRARY) 
        agent:2024/02/10 00:15:01 build.go:404: -- Could NOT find WrapPulseAudio (missing: PULSEAUDIO_LIBRARY PULSEAUDIO_INCLUDE_DIR WrapPulseAudio_FOUND) 
        agent:2024/02/10 00:15:02 build.go:404: -- Found WMF: C:/MINGW1120/mingw64/x86_64-w64-mingw32/lib/libstrmiids.a  
        agent:2024/02/10 00:15:02 build.go:404: -- Performing Test HAVE_EGL
        agent:2024/02/10 00:15:02 build.go:404: -- Performing Test HAVE_EGL - Failed
        agent:2024/02/10 00:15:02 build.go:404: -- Could NOT find EGL (missing: EGL_INCLUDE_DIR HAVE_EGL EGL_LIBRARY) 
        agent:2024/02/10 00:15:03 build.go:404: -- Found FFmpeg: libavcodec.a;libavformat.a;libavutil.a;libswresample.a;libswscale.a  found components: AVCODEC AVFORMAT AVUTIL SWRESAMPLE SWSCALE 
        agent:2024/02/10 00:15:03 build.go:404: -- Could NOT find VAAPI (missing: VAAPI_VA_FOUND VAAPI_DRM_FOUND VA DRM) 
        agent:2024/02/10 00:15:03 build.go:404: -- Performing Test evr.h
        agent:2024/02/10 00:15:06 build.go:404: -- Performing Test evr.h - Success
        agent:2024/02/10 00:15:06 build.go:404: -- Performing Test Vivante GPU
        agent:2024/02/10 00:15:07 build.go:404: -- Performing Test Vivante GPU - Failed
        agent:2024/02/10 00:15:07 build.go:404: -- Performing Test Video for Linux
        agent:2024/02/10 00:15:07 build.go:404: -- Performing Test Video for Linux - Failed
        agent:2024/02/10 00:15:07 build.go:404: -- Performing Test wmsdk.h
        agent:2024/02/10 00:15:10 build.go:404: -- Performing Test wmsdk.h - Success
        agent:2024/02/10 00:15:10 build.go:404: -- Performing Test Linux DMA buffer support - Failed because EGL::EGL not found
        agent:2024/02/10 00:15:10 build.go:404: -- Performing Test HAVE_DASH_UNDEFINED_SYMBOLS
        agent:2024/02/10 00:15:11 build.go:404: -- Performing Test HAVE_DASH_UNDEFINED_SYMBOLS - Success
        agent:2024/02/10 00:15:11 build.go:404: -- Performing Test HAVE_DASH_DASH_NO_UNDEFINED
        agent:2024/02/10 00:15:11 build.go:404: -- Performing Test HAVE_DASH_DASH_NO_UNDEFINED - Success
        agent:2024/02/10 00:15:12 build.go:404: -- Could NOT find EGL (missing: EGL_INCLUDE_DIR HAVE_EGL EGL_LIBRARY) 
        agent:2024/02/10 00:15:13 build.go:404: -- Could NOT find VAAPI (missing: VAAPI_VA_FOUND VAAPI_DRM_FOUND VA DRM) 
        agent:2024/02/10 00:15:13 build.go:404: -- Generated QtModulePlugins.cmake files for the following modules: Multimedia
        agent:2024/02/10 00:15:13 build.go:404: -- The following packages have been found:
        agent:2024/02/10 00:15:13 build.go:404:  * Qt6BuildInternals (required version >= 6.6.2)
        agent:2024/02/10 00:15:13 build.go:404:  * Qt6CoreTools (required version >= 6.6.2)
        agent:2024/02/10 00:15:13 build.go:404:  * Qt6Core (required version >= 6.6.2)
        agent:2024/02/10 00:15:13 build.go:404:  * Vulkan
        agent:2024/02/10 00:15:13 build.go:404:  * Qt6GuiTools (required version >= 6.6.2)
        agent:2024/02/10 00:15:13 build.go:404:  * Qt6Gui (required version >= 6.6.2)
        agent:2024/02/10 00:15:13 build.go:404:  * Qt6Network (required version >= 6.6.2)
        agent:2024/02/10 00:15:13 build.go:404:  * Qt6Svg (required version >= 6.6.2)
        agent:2024/02/10 00:15:13 build.go:404:  * Qt6WidgetsTools (required version >= 6.6.2)
        agent:2024/02/10 00:15:13 build.go:404:  * Qt6Widgets (required version >= 6.6.2)
        agent:2024/02/10 00:15:13 build.go:404:  * Qt6QmlTools (required version >= 6.6.2)
        agent:2024/02/10 00:15:13 build.go:404:  * WrapVulkanHeaders
        agent:2024/02/10 00:15:13 build.go:404:  * Qt6Quick (required version >= 6.6.2)
        agent:2024/02/10 00:15:13 build.go:404:  * Qt6QuickTest (required version >= 6.6.2)
        agent:2024/02/10 00:15:13 build.go:404:  * Qt6QuickControls2 (required version >= 6.6.2)
        agent:2024/02/10 00:15:13 build.go:404:  * Qt6Quick3DTools (required version >= 6.6.2)
        agent:2024/02/10 00:15:13 build.go:404:  * Qt6ShaderToolsTools (required version >= 6.6.2)
        agent:2024/02/10 00:15:13 build.go:404:  * Qt6Quick3D (required version >= 6.6.2)
        agent:2024/02/10 00:15:13 build.go:404:  * Qt6
        agent:2024/02/10 00:15:13 build.go:404:  * WMF
        agent:2024/02/10 00:15:13 build.go:404:  * FFmpeg
        agent:2024/02/10 00:15:13 build.go:404: -- The following OPTIONAL packages have not been found:
        agent:2024/02/10 00:15:13 build.go:404:  * Qt6QmlCompilerPlusPrivate
        agent:2024/02/10 00:15:13 build.go:404:  * ALSA
        agent:2024/02/10 00:15:13 build.go:404:  * AVFoundation
        agent:2024/02/10 00:15:13 build.go:404:  * GStreamer
        agent:2024/02/10 00:15:13 build.go:404:  * MMRendererCore
        agent:2024/02/10 00:15:13 build.go:404:  * MMRenderer
        agent:2024/02/10 00:15:13 build.go:404:  * PulseAudio
        agent:2024/02/10 00:15:13 build.go:404:  * WrapPulseAudio
        agent:2024/02/10 00:15:13 build.go:404:  * EGL, A platform-agnostic mechanism for creating rendering surfaces for use with other graphics libraries, such as OpenGL|ES and OpenVG., <https://www.khronos.org/egl/>
        agent:2024/02/10 00:15:14 build.go:404:  * PkgConfig
        agent:2024/02/10 00:15:14 build.go:404:  * VAAPI
        agent:2024/02/10 00:15:14 build.go:404: -- Configuration summary shown below. It has also been written to C:/Users/qt/work/qt/qtmultimedia_build/config.summary
        agent:2024/02/10 00:15:14 build.go:404: -- Configure with --log-level=STATUS or higher to increase CMake's message verbosity. The log level does not persist across reconfigurations.
        agent:2024/02/10 00:15:14 build.go:404:  
        agent:2024/02/10 00:15:14 build.go:404: -- Configure summary:
        agent:2024/02/10 00:15:14 build.go:404: Qt Multimedia:
        agent:2024/02/10 00:15:14 build.go:404:   Spatial Audio .......................... yes
        agent:2024/02/10 00:15:14 build.go:404:   Spatial Audio (Quick3D) ................ yes
        agent:2024/02/10 00:15:14 build.go:404:   Low level Audio Backend:
        agent:2024/02/10 00:15:14 build.go:404:     ALSA (experimental) .................. no
        agent:2024/02/10 00:15:14 build.go:404:     PulseAudio ........................... no
        agent:2024/02/10 00:15:14 build.go:404:     MMRenderer ........................... no
        agent:2024/02/10 00:15:14 build.go:404:     CoreAudio ............................ no
        agent:2024/02/10 00:15:14 build.go:404:     Windows Media SDK .................... yes
        agent:2024/02/10 00:15:14 build.go:404:     Open SLES (Android) .................. no
        agent:2024/02/10 00:15:14 build.go:404:     Web Assembly ......................... no
        agent:2024/02/10 00:15:14 build.go:404:   Plugin:
        agent:2024/02/10 00:15:14 build.go:404:     GStreamer 1.0 ........................ no
        agent:2024/02/10 00:15:14 build.go:404:     FFmpeg ............................... yes
        agent:2024/02/10 00:15:14 build.go:404:     MMRenderer ........................... no
        agent:2024/02/10 00:15:14 build.go:404:     AVFoundation ......................... no
        agent:2024/02/10 00:15:14 build.go:404:     Windows Media Foundation ............. yes
        agent:2024/02/10 00:15:14 build.go:404:   Hardware acceleration and features:
        agent:2024/02/10 00:15:14 build.go:404:     Video for Linux ...................... no
        agent:2024/02/10 00:15:14 build.go:404:     VAAPI support ........................ no
        agent:2024/02/10 00:15:14 build.go:404:     Linux DMA buffer support ............. no
        agent:2024/02/10 00:15:14 build.go:404:     VideoToolbox ......................... no
        agent:2024/02/10 00:15:14 build.go:404:  
        

        Doing a search on Jira points to https://bugreports.qt.io/browse/QTBUG-114540 which might have information which would help.

        K 1 Reply Last reply 12 Mar 2024, 19:56
        0
        • C cristian-adam
          12 Mar 2024, 17:42

          Qt 6.6.2 is being released with a MinGW build.

          At https://testresults.qt.io/coin/integration/qt/qtmultimedia/tasks/1707528820 I can see a qtmultimedia 6.6.2 integration.

          windows-10_22h2-mingw11 raw log has:

          agent:2024/02/10 00:14:45 build.go:795: Executing instruction 59 of 97 - ExecuteCommand
          agent:2024/02/10 00:14:45 build.go:427: [\Users\qt\work\install\bin\qt-configure-module.bat \Users\qt\work\qt\qtmultimedia -- -DFFMPEG_DIR=C:\ffmpeg-n6.1\build\mingw\installed -DFEATURE_native_grpc=OFF -DCMAKE_IGNORE_PREFIX_PATH=C:/strawberry/c -DQT_BUILD_TESTS=OFF -DCMAKE_AUTOGEN_VERBOSE=ON -DCMAKE_MESSAGE_LOG_LEVEL=STATUS -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache] 1h40m0s 20m0s false false
          agent:2024/02/10 00:14:45 build.go:404: 'C:\Users\qt\work\install\bin\\qt-cmake-private.bat' '-DFFMPEG_DIR=C:\ffmpeg-n6.1\build\mingw\installed' '-DFEATURE_native_grpc=OFF' '-DCMAKE_IGNORE_PREFIX_PATH=C:/strawberry/c' '-DQT_BUILD_TESTS=OFF' '-DCMAKE_AUTOGEN_VERBOSE=ON' '-DCMAKE_MESSAGE_LOG_LEVEL=STATUS' '-DCMAKE_C_COMPILER_LAUNCHER=sccache' '-DCMAKE_CXX_COMPILER_LAUNCHER=sccache' '-DQT_INTERNAL_CALLED_FROM_CONFIGURE:BOOL=TRUE' 'C:/Users/qt/work/qt/qtmultimedia'
          agent:2024/02/10 00:14:48 build.go:404: -- The CXX compiler identification is GNU 11.2.0
          agent:2024/02/10 00:14:51 build.go:404: -- The C compiler identification is GNU 11.2.0
          agent:2024/02/10 00:14:51 build.go:404: -- Detecting CXX compiler ABI info
          agent:2024/02/10 00:14:52 build.go:404: -- Detecting CXX compiler ABI info - done
          agent:2024/02/10 00:14:52 build.go:404: -- Check for working CXX compiler: C:/MINGW1120/mingw64/bin/g++.exe - skipped
          agent:2024/02/10 00:14:52 build.go:404: -- Detecting CXX compile features
          agent:2024/02/10 00:14:52 build.go:404: -- Detecting CXX compile features - done
          agent:2024/02/10 00:14:52 build.go:404: -- Detecting C compiler ABI info
          agent:2024/02/10 00:14:52 build.go:404: -- Detecting C compiler ABI info - done
          agent:2024/02/10 00:14:53 build.go:404: -- Check for working C compiler: C:/MINGW1120/mingw64/bin/gcc.exe - skipped
          agent:2024/02/10 00:14:53 build.go:404: -- Detecting C compile features
          agent:2024/02/10 00:14:53 build.go:404: -- Detecting C compile features - done
          agent:2024/02/10 00:14:53 build.go:404: -- Performing Test CMAKE_HAVE_LIBC_PTHREAD
          agent:2024/02/10 00:14:53 build.go:404: -- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
          agent:2024/02/10 00:14:53 build.go:404: -- Found Threads: TRUE  
          agent:2024/02/10 00:14:54 build.go:404: -- Performing Test HAVE_STDATOMIC
          agent:2024/02/10 00:14:54 build.go:404: -- Performing Test HAVE_STDATOMIC - Success
          agent:2024/02/10 00:14:54 build.go:404: -- Found WrapAtomic: TRUE  
          agent:2024/02/10 00:14:57 build.go:404: -- CMAKE_BUILD_TYPE was set to: 'RelWithDebInfo'
          agent:2024/02/10 00:14:57 build.go:404: -- Checking for feature set changes
          agent:2024/02/10 00:14:57 build.go:404: -- CMAKE_STRIP (original): C:/MINGW1120/mingw64/bin/strip.exe
          agent:2024/02/10 00:14:57 build.go:404: -- Performing Test strip --keep-section
          agent:2024/02/10 00:14:58 build.go:404: -- Performing Test strip --keep-section - TRUE
          agent:2024/02/10 00:14:58 build.go:404: -- CMAKE_STRIP (used by Qt): C:/Users/qt/work/qt/qtmultimedia_build/./bin/qt-internal-strip.bat
          agent:2024/02/10 00:14:58 build.go:404: -- Could NOT find ALSA (missing: ALSA_LIBRARY ALSA_INCLUDE_DIR) 
          agent:2024/02/10 00:14:59 build.go:404: -- Could NOT find AVFoundation (missing: AVFoundation_LIBRARY) 
          agent:2024/02/10 00:14:59 build.go:404: -- Could NOT find GLIB2 (missing: GLIB2_LIBRARIES GTHREAD2_LIBRARIES GLIB2_INCLUDE_DIRS) 
          agent:2024/02/10 00:14:59 build.go:404: -- Could NOT find GLIB2 (missing: GLIB2_LIBRARIES GTHREAD2_LIBRARIES GLIB2_INCLUDE_DIRS) 
          agent:2024/02/10 00:15:00 build.go:404: -- Could NOT find GLIB2 (missing: GLIB2_LIBRARIES GTHREAD2_LIBRARIES GLIB2_INCLUDE_DIRS) 
          agent:2024/02/10 00:15:00 build.go:404: -- Could NOT find GLIB2 (missing: GLIB2_LIBRARIES GTHREAD2_LIBRARIES GLIB2_INCLUDE_DIRS) 
          agent:2024/02/10 00:15:00 build.go:404: -- Could NOT find MMRendererCore (missing: MMRendererCore_LIBRARY) 
          agent:2024/02/10 00:15:00 build.go:404: -- Could NOT find MMRenderer (missing: MMRenderer_LIBRARY) 
          agent:2024/02/10 00:15:01 build.go:404: -- Could NOT find WrapPulseAudio (missing: PULSEAUDIO_LIBRARY PULSEAUDIO_INCLUDE_DIR WrapPulseAudio_FOUND) 
          agent:2024/02/10 00:15:02 build.go:404: -- Found WMF: C:/MINGW1120/mingw64/x86_64-w64-mingw32/lib/libstrmiids.a  
          agent:2024/02/10 00:15:02 build.go:404: -- Performing Test HAVE_EGL
          agent:2024/02/10 00:15:02 build.go:404: -- Performing Test HAVE_EGL - Failed
          agent:2024/02/10 00:15:02 build.go:404: -- Could NOT find EGL (missing: EGL_INCLUDE_DIR HAVE_EGL EGL_LIBRARY) 
          agent:2024/02/10 00:15:03 build.go:404: -- Found FFmpeg: libavcodec.a;libavformat.a;libavutil.a;libswresample.a;libswscale.a  found components: AVCODEC AVFORMAT AVUTIL SWRESAMPLE SWSCALE 
          agent:2024/02/10 00:15:03 build.go:404: -- Could NOT find VAAPI (missing: VAAPI_VA_FOUND VAAPI_DRM_FOUND VA DRM) 
          agent:2024/02/10 00:15:03 build.go:404: -- Performing Test evr.h
          agent:2024/02/10 00:15:06 build.go:404: -- Performing Test evr.h - Success
          agent:2024/02/10 00:15:06 build.go:404: -- Performing Test Vivante GPU
          agent:2024/02/10 00:15:07 build.go:404: -- Performing Test Vivante GPU - Failed
          agent:2024/02/10 00:15:07 build.go:404: -- Performing Test Video for Linux
          agent:2024/02/10 00:15:07 build.go:404: -- Performing Test Video for Linux - Failed
          agent:2024/02/10 00:15:07 build.go:404: -- Performing Test wmsdk.h
          agent:2024/02/10 00:15:10 build.go:404: -- Performing Test wmsdk.h - Success
          agent:2024/02/10 00:15:10 build.go:404: -- Performing Test Linux DMA buffer support - Failed because EGL::EGL not found
          agent:2024/02/10 00:15:10 build.go:404: -- Performing Test HAVE_DASH_UNDEFINED_SYMBOLS
          agent:2024/02/10 00:15:11 build.go:404: -- Performing Test HAVE_DASH_UNDEFINED_SYMBOLS - Success
          agent:2024/02/10 00:15:11 build.go:404: -- Performing Test HAVE_DASH_DASH_NO_UNDEFINED
          agent:2024/02/10 00:15:11 build.go:404: -- Performing Test HAVE_DASH_DASH_NO_UNDEFINED - Success
          agent:2024/02/10 00:15:12 build.go:404: -- Could NOT find EGL (missing: EGL_INCLUDE_DIR HAVE_EGL EGL_LIBRARY) 
          agent:2024/02/10 00:15:13 build.go:404: -- Could NOT find VAAPI (missing: VAAPI_VA_FOUND VAAPI_DRM_FOUND VA DRM) 
          agent:2024/02/10 00:15:13 build.go:404: -- Generated QtModulePlugins.cmake files for the following modules: Multimedia
          agent:2024/02/10 00:15:13 build.go:404: -- The following packages have been found:
          agent:2024/02/10 00:15:13 build.go:404:  * Qt6BuildInternals (required version >= 6.6.2)
          agent:2024/02/10 00:15:13 build.go:404:  * Qt6CoreTools (required version >= 6.6.2)
          agent:2024/02/10 00:15:13 build.go:404:  * Qt6Core (required version >= 6.6.2)
          agent:2024/02/10 00:15:13 build.go:404:  * Vulkan
          agent:2024/02/10 00:15:13 build.go:404:  * Qt6GuiTools (required version >= 6.6.2)
          agent:2024/02/10 00:15:13 build.go:404:  * Qt6Gui (required version >= 6.6.2)
          agent:2024/02/10 00:15:13 build.go:404:  * Qt6Network (required version >= 6.6.2)
          agent:2024/02/10 00:15:13 build.go:404:  * Qt6Svg (required version >= 6.6.2)
          agent:2024/02/10 00:15:13 build.go:404:  * Qt6WidgetsTools (required version >= 6.6.2)
          agent:2024/02/10 00:15:13 build.go:404:  * Qt6Widgets (required version >= 6.6.2)
          agent:2024/02/10 00:15:13 build.go:404:  * Qt6QmlTools (required version >= 6.6.2)
          agent:2024/02/10 00:15:13 build.go:404:  * WrapVulkanHeaders
          agent:2024/02/10 00:15:13 build.go:404:  * Qt6Quick (required version >= 6.6.2)
          agent:2024/02/10 00:15:13 build.go:404:  * Qt6QuickTest (required version >= 6.6.2)
          agent:2024/02/10 00:15:13 build.go:404:  * Qt6QuickControls2 (required version >= 6.6.2)
          agent:2024/02/10 00:15:13 build.go:404:  * Qt6Quick3DTools (required version >= 6.6.2)
          agent:2024/02/10 00:15:13 build.go:404:  * Qt6ShaderToolsTools (required version >= 6.6.2)
          agent:2024/02/10 00:15:13 build.go:404:  * Qt6Quick3D (required version >= 6.6.2)
          agent:2024/02/10 00:15:13 build.go:404:  * Qt6
          agent:2024/02/10 00:15:13 build.go:404:  * WMF
          agent:2024/02/10 00:15:13 build.go:404:  * FFmpeg
          agent:2024/02/10 00:15:13 build.go:404: -- The following OPTIONAL packages have not been found:
          agent:2024/02/10 00:15:13 build.go:404:  * Qt6QmlCompilerPlusPrivate
          agent:2024/02/10 00:15:13 build.go:404:  * ALSA
          agent:2024/02/10 00:15:13 build.go:404:  * AVFoundation
          agent:2024/02/10 00:15:13 build.go:404:  * GStreamer
          agent:2024/02/10 00:15:13 build.go:404:  * MMRendererCore
          agent:2024/02/10 00:15:13 build.go:404:  * MMRenderer
          agent:2024/02/10 00:15:13 build.go:404:  * PulseAudio
          agent:2024/02/10 00:15:13 build.go:404:  * WrapPulseAudio
          agent:2024/02/10 00:15:13 build.go:404:  * EGL, A platform-agnostic mechanism for creating rendering surfaces for use with other graphics libraries, such as OpenGL|ES and OpenVG., <https://www.khronos.org/egl/>
          agent:2024/02/10 00:15:14 build.go:404:  * PkgConfig
          agent:2024/02/10 00:15:14 build.go:404:  * VAAPI
          agent:2024/02/10 00:15:14 build.go:404: -- Configuration summary shown below. It has also been written to C:/Users/qt/work/qt/qtmultimedia_build/config.summary
          agent:2024/02/10 00:15:14 build.go:404: -- Configure with --log-level=STATUS or higher to increase CMake's message verbosity. The log level does not persist across reconfigurations.
          agent:2024/02/10 00:15:14 build.go:404:  
          agent:2024/02/10 00:15:14 build.go:404: -- Configure summary:
          agent:2024/02/10 00:15:14 build.go:404: Qt Multimedia:
          agent:2024/02/10 00:15:14 build.go:404:   Spatial Audio .......................... yes
          agent:2024/02/10 00:15:14 build.go:404:   Spatial Audio (Quick3D) ................ yes
          agent:2024/02/10 00:15:14 build.go:404:   Low level Audio Backend:
          agent:2024/02/10 00:15:14 build.go:404:     ALSA (experimental) .................. no
          agent:2024/02/10 00:15:14 build.go:404:     PulseAudio ........................... no
          agent:2024/02/10 00:15:14 build.go:404:     MMRenderer ........................... no
          agent:2024/02/10 00:15:14 build.go:404:     CoreAudio ............................ no
          agent:2024/02/10 00:15:14 build.go:404:     Windows Media SDK .................... yes
          agent:2024/02/10 00:15:14 build.go:404:     Open SLES (Android) .................. no
          agent:2024/02/10 00:15:14 build.go:404:     Web Assembly ......................... no
          agent:2024/02/10 00:15:14 build.go:404:   Plugin:
          agent:2024/02/10 00:15:14 build.go:404:     GStreamer 1.0 ........................ no
          agent:2024/02/10 00:15:14 build.go:404:     FFmpeg ............................... yes
          agent:2024/02/10 00:15:14 build.go:404:     MMRenderer ........................... no
          agent:2024/02/10 00:15:14 build.go:404:     AVFoundation ......................... no
          agent:2024/02/10 00:15:14 build.go:404:     Windows Media Foundation ............. yes
          agent:2024/02/10 00:15:14 build.go:404:   Hardware acceleration and features:
          agent:2024/02/10 00:15:14 build.go:404:     Video for Linux ...................... no
          agent:2024/02/10 00:15:14 build.go:404:     VAAPI support ........................ no
          agent:2024/02/10 00:15:14 build.go:404:     Linux DMA buffer support ............. no
          agent:2024/02/10 00:15:14 build.go:404:     VideoToolbox ......................... no
          agent:2024/02/10 00:15:14 build.go:404:  
          

          Doing a search on Jira points to https://bugreports.qt.io/browse/QTBUG-114540 which might have information which would help.

          K Offline
          K Offline
          kyrlon
          wrote on 12 Mar 2024, 19:56 last edited by
          #5

          @cristian-adam Thanks for the response. I have not seen my error/bug so I created a new issue

          1 Reply Last reply
          1
          • K kyrlon
            12 Mar 2024, 17:25

            @cristian-adam Thanks for pointing that out. As mentioned by your comment, I was using an incompatible version of minGW. I then downloaded the compatible MinGW and added to PATH

            Attempt # 5 for building on windows

            1. Cleared out the build folder and ran the configure.bat like the following:
            PS C:\Users\kyrlon\Downloads\qt-everywhere-src-6.6.2\build> ..\configure.bat
            
            1. Ran the command cmake --build . --parallel
              Got a bunch of errors stating that it could not remove certain files with what it looks like mingw-32-make.exe: https://pastebin.com/N1Kctyf6

            2. Ran the command cmake --build . --parallel
              Got a bunch of errors again this time failing at 10% with just Error2: https://pastebin.com/j6hUEWeX

            Attempt # 6 for building on windows

            Decided to use ninja to see if there is any difference with a different build tool added since it was recommended, but not required. Downloaded ninja v1.11.1 and added to PATH

            1. Cleared out the build folder and ran the configure.bat like the following:
            PS C:\Users\kyrlon\Downloads\qt-everywhere-src-6.6.2\build> ..\configure.bat
            
            1. Ran the command cmake --build . --parallel
              Got a bunch of no outputs generated. Eventually got a FAILED:
            FAILED: qtmultimedia/src/plugins/multimedia/windows/CMakeFiles/QWindowsMediaPlugin.dir/qwindowsintegration.cpp.obj
            

            Here is a log output for this attempt: https://pastebin.com/sVUR1jGa
            This error is similar to Attempt #4, and I am not sure why this file would be missing.

            Christian EhrlicherC Offline
            Christian EhrlicherC Offline
            Christian Ehrlicher
            Lifetime Qt Champion
            wrote on 12 Mar 2024, 20:02 last edited by
            #6

            @kyrlon said in Failing to build Qt 6.6.2 from source on Windows 10 with MinGW64 compiler:

            and I am not sure why this file would be missing.

            Because the path is to long. Use a shorter source and build path and blame MS.

            Qt Online Installer direct download: https://download.qt.io/official_releases/online_installers/
            Visit the Qt Academy at https://academy.qt.io/catalog

            C 1 Reply Last reply 12 Mar 2024, 20:15
            1
            • Christian EhrlicherC Christian Ehrlicher
              12 Mar 2024, 20:02

              @kyrlon said in Failing to build Qt 6.6.2 from source on Windows 10 with MinGW64 compiler:

              and I am not sure why this file would be missing.

              Because the path is to long. Use a shorter source and build path and blame MS.

              C Online
              C Online
              cristian-adam
              wrote on 12 Mar 2024, 20:15 last edited by
              #7

              @kyrlon It could be that the path is too long for the MinGW GCC.

              At https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107974 I have a bugreport with a workaround to make gcc accept long paths:

              I've used the manifest tool from Visual C++ (mt.exe) to inject this manifest:

              <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
              <!-- Copyright (c) Microsoft Corporation -->
              <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
              <application  xmlns="urn:schemas-microsoft-com:asm.v3">
                  <windowsSettings xmlns:ws2="http://schemas.microsoft.com/SMI/2016/WindowsSettings">
                      <ws2:longPathAware>true</ws2:longPathAware>
                  </windowsSettings>
              </application>
              </assembly>
              

              with the command line:
              mt.exe -nologo -manifest "cc1plus.exe.manifest" -outputresource:"cc1plus.exe;#1"

              Ninja requires the same treatment, see https://github.com/ninja-build/ninja/pull/2225

              K 1 Reply Last reply 13 Mar 2024, 17:24
              1
              • C cristian-adam
                12 Mar 2024, 20:15

                @kyrlon It could be that the path is too long for the MinGW GCC.

                At https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107974 I have a bugreport with a workaround to make gcc accept long paths:

                I've used the manifest tool from Visual C++ (mt.exe) to inject this manifest:

                <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                <!-- Copyright (c) Microsoft Corporation -->
                <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
                <application  xmlns="urn:schemas-microsoft-com:asm.v3">
                    <windowsSettings xmlns:ws2="http://schemas.microsoft.com/SMI/2016/WindowsSettings">
                        <ws2:longPathAware>true</ws2:longPathAware>
                    </windowsSettings>
                </application>
                </assembly>
                

                with the command line:
                mt.exe -nologo -manifest "cc1plus.exe.manifest" -outputresource:"cc1plus.exe;#1"

                Ninja requires the same treatment, see https://github.com/ninja-build/ninja/pull/2225

                K Offline
                K Offline
                kyrlon
                wrote on 13 Mar 2024, 17:24 last edited by
                #8

                @cristian-adam I am not too familiar with this. Do I run this in the minGW bin? I do not have a cc1plus.exe on my system.

                1 Reply Last reply
                0
                • K Offline
                  K Offline
                  kyrlon
                  wrote on 13 Mar 2024, 20:05 last edited by kyrlon
                  #9

                  Attempt # 7 for building on windows

                  Decided to use ninja that had fix in it, so I compiled from source on windows and replaced with new ninja in PATH

                  1. Cleared out the build folder and ran the configure.bat like the following:
                  PS C:\Users\kyrlon\Downloads\qt-everywhere-src-6.6.2\build> ..\configure.bat
                  
                  1. Ran the command cmake --build . --parallel
                    Got another output fail due to missing header:
                  C:/Users/kyrlon/Downloads/qt-everywhere-src-6.6.2/qtmultimedia/src/multimedia/windows/qwindowsmediadevices_p.h:19:10: fatal error: qplatformmediadevices_p.h: No such file or directory
                     19 | #include <qplatformmediadevices_p.h>
                        |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~
                  compilation terminated.
                  

                  Attempt # 8 for building on windows [SUCCESS!!]

                  Trying the suggestion by Christian Ehrlicher, and decided to build in the C:\ path directly, but this required a terminal with ADMIN priv.

                  1. Cleared out the build folder and ran the configure.bat like the following:
                  PS C:\qt6\build> ..\configure.bat
                  
                  1. Ran the command cmake --build . --parallel
                    SUCCESS!
                  2. Ran the command:
                  PS C:\qt6\build> cmake --install .
                  

                  No issues and everything was installed.

                  This attempt appears to be successful, but I'm not sure if trying to build from source every time from different machines would allow me to always have access to C:\.

                  jsulmJ 1 Reply Last reply 14 Mar 2024, 06:46
                  0
                  • K kyrlon
                    13 Mar 2024, 20:05

                    Attempt # 7 for building on windows

                    Decided to use ninja that had fix in it, so I compiled from source on windows and replaced with new ninja in PATH

                    1. Cleared out the build folder and ran the configure.bat like the following:
                    PS C:\Users\kyrlon\Downloads\qt-everywhere-src-6.6.2\build> ..\configure.bat
                    
                    1. Ran the command cmake --build . --parallel
                      Got another output fail due to missing header:
                    C:/Users/kyrlon/Downloads/qt-everywhere-src-6.6.2/qtmultimedia/src/multimedia/windows/qwindowsmediadevices_p.h:19:10: fatal error: qplatformmediadevices_p.h: No such file or directory
                       19 | #include <qplatformmediadevices_p.h>
                          |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~
                    compilation terminated.
                    

                    Attempt # 8 for building on windows [SUCCESS!!]

                    Trying the suggestion by Christian Ehrlicher, and decided to build in the C:\ path directly, but this required a terminal with ADMIN priv.

                    1. Cleared out the build folder and ran the configure.bat like the following:
                    PS C:\qt6\build> ..\configure.bat
                    
                    1. Ran the command cmake --build . --parallel
                      SUCCESS!
                    2. Ran the command:
                    PS C:\qt6\build> cmake --install .
                    

                    No issues and everything was installed.

                    This attempt appears to be successful, but I'm not sure if trying to build from source every time from different machines would allow me to always have access to C:\.

                    jsulmJ Offline
                    jsulmJ Offline
                    jsulm
                    Lifetime Qt Champion
                    wrote on 14 Mar 2024, 06:46 last edited by
                    #10

                    @kyrlon said in Failing to build Qt 6.6.2 from source on Windows 10 with MinGW64 compiler:

                    allow me to always have access to C:.

                    You can also build in your user home folder like c:\users\USER_NAME\QT_BUILD_FOLDER

                    https://forum.qt.io/topic/113070/qt-code-of-conduct

                    K 2 Replies Last reply 14 Mar 2024, 21:56
                    0
                    • jsulmJ jsulm
                      14 Mar 2024, 06:46

                      @kyrlon said in Failing to build Qt 6.6.2 from source on Windows 10 with MinGW64 compiler:

                      allow me to always have access to C:.

                      You can also build in your user home folder like c:\users\USER_NAME\QT_BUILD_FOLDER

                      K Offline
                      K Offline
                      kyrlon
                      wrote on 14 Mar 2024, 21:56 last edited by
                      #11

                      @jsulm Good point. In general, I am aware that this is a Windows problem, but tampering with registry keys to disable the character path limit is not the ideal solution for different systems in use. Since I don't do much development on Windows, I was just wondering if this was a gcc or cmake limitation?

                      jsulmJ Christian EhrlicherC 2 Replies Last reply 15 Mar 2024, 06:34
                      0
                      • K kyrlon
                        14 Mar 2024, 21:56

                        @jsulm Good point. In general, I am aware that this is a Windows problem, but tampering with registry keys to disable the character path limit is not the ideal solution for different systems in use. Since I don't do much development on Windows, I was just wondering if this was a gcc or cmake limitation?

                        jsulmJ Offline
                        jsulmJ Offline
                        jsulm
                        Lifetime Qt Champion
                        wrote on 15 Mar 2024, 06:34 last edited by
                        #12

                        @kyrlon Too long paths is a Windows limitation

                        https://forum.qt.io/topic/113070/qt-code-of-conduct

                        C 1 Reply Last reply 15 Mar 2024, 08:41
                        0
                        • K kyrlon
                          14 Mar 2024, 21:56

                          @jsulm Good point. In general, I am aware that this is a Windows problem, but tampering with registry keys to disable the character path limit is not the ideal solution for different systems in use. Since I don't do much development on Windows, I was just wondering if this was a gcc or cmake limitation?

                          Christian EhrlicherC Offline
                          Christian EhrlicherC Offline
                          Christian Ehrlicher
                          Lifetime Qt Champion
                          wrote on 15 Mar 2024, 06:38 last edited by
                          #13

                          @kyrlon said in Failing to build Qt 6.6.2 from source on Windows 10 with MinGW64 compiler:

                          Since I don't do much development on Windows, I was just wondering if this was a gcc or cmake limitation?

                          Because the path is to long. Use a shorter source and build path and blame MS

                          Already answered two days ago...

                          Qt Online Installer direct download: https://download.qt.io/official_releases/online_installers/
                          Visit the Qt Academy at https://academy.qt.io/catalog

                          1 Reply Last reply
                          0
                          • jsulmJ jsulm
                            15 Mar 2024, 06:34

                            @kyrlon Too long paths is a Windows limitation

                            C Online
                            C Online
                            cristian-adam
                            wrote on 15 Mar 2024, 08:41 last edited by
                            #14

                            @jsulm said in Failing to build Qt 6.6.2 from source on Windows 10 with MinGW64 compiler:

                            Too long paths is a Windows limitation

                            Not quite. Windows has support for long paths (>255 characters) since Windows 10 version 1607 released on August 2015.

                            But the applications need to opt-in in order to use the new functionality.

                            It's a tooling problem:

                            • Ninja - Is fixed but waiting for an official release (1.12)
                            • GCC - Not fixed.
                            • Visual C++ - Not fixed.
                            • moc - Fixed since Qt 6.5.
                            • make - Not fixed, but forgot to open a bug report.
                            • clang - Works out of the box.
                            • cmake - Works out of the box.

                            So on Windows if you take llvm-mingw and a patched ninja you would be able to compile with clang and Qt 6.5+ just fine.

                            jsulmJ K 2 Replies Last reply 15 Mar 2024, 09:21
                            3
                            • C cristian-adam
                              15 Mar 2024, 08:41

                              @jsulm said in Failing to build Qt 6.6.2 from source on Windows 10 with MinGW64 compiler:

                              Too long paths is a Windows limitation

                              Not quite. Windows has support for long paths (>255 characters) since Windows 10 version 1607 released on August 2015.

                              But the applications need to opt-in in order to use the new functionality.

                              It's a tooling problem:

                              • Ninja - Is fixed but waiting for an official release (1.12)
                              • GCC - Not fixed.
                              • Visual C++ - Not fixed.
                              • moc - Fixed since Qt 6.5.
                              • make - Not fixed, but forgot to open a bug report.
                              • clang - Works out of the box.
                              • cmake - Works out of the box.

                              So on Windows if you take llvm-mingw and a patched ninja you would be able to compile with clang and Qt 6.5+ just fine.

                              jsulmJ Offline
                              jsulmJ Offline
                              jsulm
                              Lifetime Qt Champion
                              wrote on 15 Mar 2024, 09:21 last edited by
                              #15

                              @cristian-adam said in Failing to build Qt 6.6.2 from source on Windows 10 with MinGW64 compiler:

                              But the applications need to opt-in in order to use the new functionality

                              Well, yes. But you can also see it as on OS problem if user has to do something special just to be able to use long paths. And I think this is a system wide setting and not per-application.

                              https://forum.qt.io/topic/113070/qt-code-of-conduct

                              1 Reply Last reply
                              0
                              • C cristian-adam
                                15 Mar 2024, 08:41

                                @jsulm said in Failing to build Qt 6.6.2 from source on Windows 10 with MinGW64 compiler:

                                Too long paths is a Windows limitation

                                Not quite. Windows has support for long paths (>255 characters) since Windows 10 version 1607 released on August 2015.

                                But the applications need to opt-in in order to use the new functionality.

                                It's a tooling problem:

                                • Ninja - Is fixed but waiting for an official release (1.12)
                                • GCC - Not fixed.
                                • Visual C++ - Not fixed.
                                • moc - Fixed since Qt 6.5.
                                • make - Not fixed, but forgot to open a bug report.
                                • clang - Works out of the box.
                                • cmake - Works out of the box.

                                So on Windows if you take llvm-mingw and a patched ninja you would be able to compile with clang and Qt 6.5+ just fine.

                                K Offline
                                K Offline
                                kyrlon
                                wrote on 15 Mar 2024, 17:53 last edited by
                                #16

                                @cristian-adam

                                Attempt # 9 for building on windows

                                Tried your suggestion, but got the same error of missing file of qplatformmediadevices_p.h

                                1. Cleared out the build folder and ran the configure.bat like the following:
                                PS C:\qt6\build> ..\configure.bat
                                
                                1. Ran the command cmake --build . --parallel

                                Buikld stop with missing header file: https://pastebin.com/AZ7zDM2d

                                I used the version of llvm-mingw:

                                version of ninja used:

                                PS C:\Users\kyrlon\Downloads\qt-everywhere-src-6.6.2\build> ninja --version
                                1.12.0.git
                                
                                C 1 Reply Last reply 17 Mar 2024, 13:45
                                1
                                • jsulmJ jsulm
                                  14 Mar 2024, 06:46

                                  @kyrlon said in Failing to build Qt 6.6.2 from source on Windows 10 with MinGW64 compiler:

                                  allow me to always have access to C:.

                                  You can also build in your user home folder like c:\users\USER_NAME\QT_BUILD_FOLDER

                                  K Offline
                                  K Offline
                                  kyrlon
                                  wrote on 16 Mar 2024, 15:37 last edited by
                                  #17

                                  @jsulm said in Failing to build Qt 6.6.2 from source on Windows 10 with MinGW64 compiler:

                                  You can also build in your user home folder like c:\users\USER_NAME\QT_BUILD_FOLDER

                                  Another alternative is to use a virtual drive using the subst command. I might make this attempt later.

                                  1 Reply Last reply
                                  0
                                  • K kyrlon
                                    15 Mar 2024, 17:53

                                    @cristian-adam

                                    Attempt # 9 for building on windows

                                    Tried your suggestion, but got the same error of missing file of qplatformmediadevices_p.h

                                    1. Cleared out the build folder and ran the configure.bat like the following:
                                    PS C:\qt6\build> ..\configure.bat
                                    
                                    1. Ran the command cmake --build . --parallel

                                    Buikld stop with missing header file: https://pastebin.com/AZ7zDM2d

                                    I used the version of llvm-mingw:

                                    version of ninja used:

                                    PS C:\Users\kyrlon\Downloads\qt-everywhere-src-6.6.2\build> ninja --version
                                    1.12.0.git
                                    
                                    C Online
                                    C Online
                                    cristian-adam
                                    wrote on 17 Mar 2024, 13:45 last edited by
                                    #18

                                    @kyrlon thank you for trying out llvm-mingw.

                                    I'll have a look at this since from my point of view all of the tools should allow for long paths.

                                    1 Reply Last reply
                                    0
                                    • K Offline
                                      K Offline
                                      kyrlon
                                      wrote on 3 Apr 2024, 04:22 last edited by
                                      #19

                                      Attempt # 10 for building on windows [SUCCESS!!]

                                      Started from scratch by re-downloading the source and used the subst command to make a new path to build with.

                                      1. Created a virtual drive to avoid the PATH length limit:
                                      subst a: .\qt-everywhere-src-6.6.2\
                                      
                                      1. created the build folder and ran the configure.bat like the following:
                                      PS a:\build> ..\configure.bat
                                      
                                      1. Ran the command cmake --build . --parallel

                                      2. Ran the install command afterwards

                                      PS a:\build> cmake --build . --parallel
                                      

                                      No issues and everything was installed.

                                      1 Reply Last reply
                                      0
                                      • CesarC Cesar referenced this topic on 16 May 2024, 20:41

                                      • Login

                                      • Login or register to search.
                                      • First post
                                        Last post
                                      0
                                      • Categories
                                      • Recent
                                      • Tags
                                      • Popular
                                      • Users
                                      • Groups
                                      • Search
                                      • Get Qt Extensions
                                      • Unsolved