Details
-
Bug
-
Resolution: Incomplete
-
P2: Important
-
None
-
6.2.9, 6.5.0, 6.5.1
-
Windows11 ARM64
Visual Studio 2022
Description
Have Qt 6.5.1 sources, compile Windows on ARM binaries natively, using MSVC2022 and skipping unsupported modules:
cmake -DQT_BUILD_EXAMPLES=FALSE -DCMAKE_BUILD_TYPE=Release -DDEVELOPER_MODE=YES -DQT_BUILD_TESTS_BY_DEFAULT=OFF -DBUILD_qtwebengine=FALSE -DBUILD_qtquickeffectmaker=FALSE -DBUILD_qtwayland=FALSE -DBUILD_qttranslations=FALSE -DBUILD_qtdoc=FALSE -DBUILD_qtwebview=FALSE C:\Users\qt\RTA\Qt_6.5.1\6.5.1\Src -DCMAKE_INSTALL_PREFIX:PATH=C:\Users\qt\RTA\Qt_6.5.1\6.5.1\Src\qtbase
Compile qtconcurrent examples using binaries in C:\Users\qt\RTA\Qt_6.5.1\6.5.1\Src\qtbase, e.g. qtconcurrent\imagescaling:
qt-cmake -S C:\Users\qt\RTA\Qt_6.5.1\Examples\Qt-6.5.1\qtconcurrent\imagescaling -B C:\Users\qt\RTA\Qt_6.5.1\Examples\Qt-6.5.1\qtconcurrent\imagescaling\bld -GNinja
Fails:
[1/6] Automatic MOC and UIC for target imagescaling [2/6] Building CXX object CMakeFiles\imagescaling.dir\downloaddialog.cpp.obj [3/6] Building CXX object CMakeFiles\imagescaling.dir\main.cpp.obj [4/6] Building CXX object CMakeFiles\imagescaling.dir\imagescaling_autogen\mocs_compilation.cpp.obj [5/6] Building CXX object CMakeFiles\imagescaling.dir\imagescaling.cpp.obj [6/6] Linking CXX executable imagescaling.exe FAILED: imagescaling.exe cmd.exe /C "cd . && "C:\Program Files\Microsoft Visual Studio\2022\Professional\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.exe" -E vs_link_exe --intdir=CMakeFiles\imagescaling.dir --rc=C:\PROGRA~2\WI3CF2~1\10\bin\100226~1.0\arm64\rc.exe --mt=C:\PROGRA~2\WI3CF2~1\10\bin\100226~1.0\arm64\mt.exe --manifests -- C:\PROGRA~1\MICROS~4\2022\PROFES~1\VC\Tools\MSVC\1435~1.322\bin\HOSTAR~1\arm64\link.exe /nologo CMakeFiles\imagescaling.dir\imagescaling_autogen\mocs_compilation.cpp.obj CMakeFiles\imagescaling.dir\downloaddialog.cpp.obj CMakeFiles\imagescaling.dir\imagescaling.cpp.obj CMakeFiles\imagescaling.dir\main.cpp.obj /out:imagescaling.exe /implib:imagescaling.lib /pdb:imagescaling.pdb /version:0.0 /machine:ARM64 /debug /INCREMENTAL /subsystem:windows -DYNAMICBASE -NXCOMPAT -LARGEADDRESSAWARE C:\Users\qt\RTA\Qt_6.5.1\6.5.1\Src\qtbase\lib\Qt6Concurrent.lib C:\Users\qt\RTA\Qt_6.5.1\6.5.1\Src\qtbase\lib\Qt6Network.lib C:\Users\qt\RTA\Qt_6.5.1\6.5.1\Src\qtbase\lib\Qt6Widgets.lib ws2_32.lib C:\Users\qt\RTA\Qt_6.5.1\6.5.1\Src\qtbase\lib\Qt6Gui.lib C:\Users\qt\RTA\Qt_6.5.1\6.5.1\Src\qtbase\lib\Qt6Core.lib mpr.lib userenv.lib C:\Users\qt\RTA\Qt_6.5.1\6.5.1\Src\qtbase\lib\Qt6EntryPoint.lib shell32.lib d3d11.lib dxgi.lib dxguid.lib dcomp.lib kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib && cd ." LINK Pass 1: command "C:\PROGRA~1\MICROS~4\2022\PROFES~1\VC\Tools\MSVC\1435~1.322\bin\HOSTAR~1\arm64\link.exe /nologo CMakeFiles\imagescaling.dir\imagescaling_autogen\mocs_compilation.cpp.obj CMakeFiles\imagescaling.dir\downloaddialog.cpp.obj CMakeFiles\imagescaling.dir\imagescaling.cpp.obj CMakeFiles\imagescaling.dir\main.cpp.obj /out:imagescaling.exe /implib:imagescaling.lib /pdb:imagescaling.pdb /version:0.0 /machine:ARM64 /debug /INCREMENTAL /subsystem:windows -DYNAMICBASE -NXCOMPAT -LARGEADDRESSAWARE C:\Users\qt\RTA\Qt_6.5.1\6.5.1\Src\qtbase\lib\Qt6Concurrent.lib C:\Users\qt\RTA\Qt_6.5.1\6.5.1\Src\qtbase\lib\Qt6Network.lib C:\Users\qt\RTA\Qt_6.5.1\6.5.1\Src\qtbase\lib\Qt6Widgets.lib ws2_32.lib C:\Users\qt\RTA\Qt_6.5.1\6.5.1\Src\qtbase\lib\Qt6Gui.lib C:\Users\qt\RTA\Qt_6.5.1\6.5.1\Src\qtbase\lib\Qt6Core.lib mpr.lib userenv.lib C:\Users\qt\RTA\Qt_6.5.1\6.5.1\Src\qtbase\lib\Qt6EntryPoint.lib shell32.lib d3d11.lib dxgi.lib dxguid.lib dcomp.lib kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib /MANIFEST /MANIFESTFILE:CMakeFiles\imagescaling.dir/intermediate.manifest CMakeFiles\imagescaling.dir/manifest.res" failed (exit code 1120) with the following output: MSVCRTD.lib(initializers.obj) : warning LNK4098: defaultlib 'msvcrt.lib' conflicts with use of other libs; use /NODEFAULTLIB:library imagescaling.cpp.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: __cdecl QtPrivate::ResultIteratorBase::~ResultIteratorBase(void)" (__imp_??1ResultIteratorBase@QtPrivate@@QEAA@XZ) referenced in function "public: class QList<class QImage> const & __cdecl QFutureInterface<class QList<class QImage> >::resultReference(int)const " (?resultReference@?$QFutureInterface@V?$QList@VQImage@@@@@@QEBAAEBV?$QList@VQImage@@@@H@Z) imagescaling.exe : fatal error LNK1120: 1 unresolved externals ninja: build stopped: subcommand failed.
Other examples are getting compiled, so seems that in general the binaries work.
Another test that uses pre-build WoA binaries (cross compiled) from installer and compiles examples, is able to compile also qtconcurrent examples.
Reproduces also with Qt 6.5.0.