qt5.15.2 + vs 2022 static build error,please help me
-
commandline:
SET VS_ENVIRONMENT="C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Auxiliary\Build\vcvars64.bat"
SET SRC_DIR="C:\Work\Qt\5.15.2\Src"
SET BUILD_DIR="C:\Work\Qt\5.15.2\Build"
SET INSTALL_DIR="C:\Work\Qt\5.15.2\msvc2019_64_static_size"
SET CONFIGURE_OPTIONS=-platform win32-msvc2019 -release -mp -opensource -confirm-license -static -static-runtime -optimize-sizecall %VS_ENVIRONMENT%
mkdir %BUILD_DIR%
mkdir %INSTALL_DIR%
cd %BUILD_DIR%
call %SRC_DIR%\configure -prefix %INSTALL_DIR% %CONFIGURE_OPTIONS%
nmake
nmake install
cd %INSTALL_DIR%
rmdir %BUILD_DIR% /Q /S
pausereturn:
C:\Work\Qt\5.15.2\Src\qtbase\src\corelib\mimetypes\qmimeprovider.cpp(88): error C2479: “QMimeProviderBase::{ctor}”:“allocate( )”
C:\Work\Qt\5.15.2\Src\qtbase\src\corelib\mimetypes\qmimeprovider.cpp(88): error C2024: "alignas"
C:\Work\Qt\5.15.2\Src\qtbase\src\corelib\mimetypes\qmimeprovider.cpp(638): error C2065: “mimetype_database”:
C:\Work\Qt\5.15.2\Src\qtbase\src\corelib\mimetypes\qmimeprovider.cpp(639): error C2065: “mimetype_database”:
C:\Work\Qt\5.15.2\Src\qtbase\src\corelib\mimetypes\qmimeprovider.cpp(639): error C2065: “MimeTypeDatabaseOriginalSize”:
C:\Work\Qt\5.15.2\Src\qtbase\src\corelib\mimetypes\qmimeprovider.cpp(639): error C2338: static_assert failed: 'Compressed MIME database is larger than the original size'
C:\Work\Qt\5.15.2\Src\qtbase\src\corelib\mimetypes\qmimeprovider.cpp(641): error C2065: “MimeTypeDatabaseOriginalSize”:
C:\Work\Qt\5.15.2\Src\qtbase\src\corelib\mimetypes\qmimeprovider.cpp(641): error C2338: static_assert failed: 'Bundled MIME database is too big'
C:\Work\Qt\5.15.2\Src\qtbase\src\corelib\mimetypes\qmimeprovider.cpp(643): error C2065: “mimetype_database”:
C:\Work\Qt\5.15.2\Src\qtbase\src\corelib\mimetypes\qmimeprovider.cpp(644): error C2065: “MimeTypeDatabaseOriginalSize”:
NMAKE : fatal error U1077: “"C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.32.31326\bin\HostX64\x64\cl.EXE"”: return code“0x2”
Stop.
NMAKE : fatal error U1077: “"C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.32.31326\bin\HostX64\x64\nmake.exe"”: return code“0x2”
Stop.
NMAKE : fatal error U1077: “cd”: return code“0x2”
Stop.
NMAKE : fatal error U1077: “cd”: return code“0x2”
Stop.
NMAKE : fatal error U1077: “cd”: return code“0x2”
Stop.thanks you all
-
You can try to install new version of Strawberry Perl. Perl is used to generate qmimeprovider_database.cpp as indicated by file "qtbase\src\corelib\mimetypes\mimetypes.pri".
mimedb.depends = $$PWD/mime/generate.pl equals(MAKEFILE_GENERATOR, MSVC.NET)|equals(MAKEFILE_GENERATOR, MSBUILD)|isEmpty(QMAKE_SH) { mimedb.commands = cmd /c $$shell_path($$PWD/mime/generate.bat) mimedb.depends += $$PWD/mime/generate.bat $$PWD/mime/hexdump.ps1 } else { mimedb.commands = perl $${mimedb.depends} }
Refer to https://www.qtcentre.org/threads/71253-Static-Build-Issue-on-QT-5-15-0?p=309507#post309507
Then, if "qmimeprovider_database.cpp" is generated correctly, the compilation works.