Skip to content

cmake: remove "--no-quick" from windeployqt#16485

Merged
Megamouse merged 2 commits into
RPCS3:masterfrom
oltolm:windeployqt
Jan 5, 2025
Merged

cmake: remove "--no-quick" from windeployqt#16485
Megamouse merged 2 commits into
RPCS3:masterfrom
oltolm:windeployqt

Conversation

@oltolm

@oltolm oltolm commented Dec 31, 2024

Copy link
Copy Markdown
Contributor

I get and error when I try building on Windows.

[608/611] Linking CXX executable bin\rpcs3.exe
FAILED: bin/rpcs3.exe
C:\WINDOWS\system32\cmd.exe /C "cd . && C:\msys64\clang64\bin\clang++.exe -D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_DEBUG -gdwarf-aranges -g -mwindows  -Wl,--allow-multiple-definition -Wl,--stack -Wl,8388608 -Wl,--image-base,0x10000 @CMakeFiles\rpcs3.rsp -o bin\rpcs3.exe -Wl,--out-implib,rpcs3\librpcs3.dll.a -Wl,--major-image-version,0,--minor-image-version,0 && C:\WINDOWS\system32\cmd.exe /C "cd /D E:\build-rpcs3-clang\rpcs3 && C:\msys64\clang64\bin\cmake.exe -E copy E:/build-rpcs3-clang/3rdparty/OpenAL/openal-soft/OpenAL32.dll E:/build-rpcs3-clang/bin && C:\msys64\clang64\bin\cmake.exe -E copy_directory C:/src/rpcs3/bin/Icons E:/build-rpcs3-clang/bin/Icons && C:\msys64\clang64\bin\cmake.exe -E copy_directory C:/src/rpcs3/bin/GuiConfigs E:/build-rpcs3-clang/bin/GuiConfigs && C:\msys64\clang64\bin\cmake.exe -E copy_directory C:/src/rpcs3/bin/git E:/build-rpcs3-clang/bin/git && C:\msys64\clang64\bin\windeployqt-qt6.exe --no-compiler-runtime --no-opengl-sw --no-patchqt --no-translations --no-quick --no-system-d3d-compiler --no-quick-import --plugindir E:/build-rpcs3-clang/bin/share/qt6/plugins --verbose 0 E:/build-rpcs3-clang/bin/rpcs3.exe""
Unknown option 'no-quick'.

ninja: build stopped: subcommand failed.

@Megamouse

Copy link
Copy Markdown
Contributor

--no-quick is a valid argument though

@Megamouse Megamouse added OS: Windows Build and CI Anything related to the build process and continuous integration labels Jan 1, 2025
@oltolm

oltolm commented Jan 1, 2025

Copy link
Copy Markdown
Contributor Author

--no-quick is a valid argument though

It's probably a bug in the MSYS2 version. I don't have the qt6-quick3d package installed. It does not happen if i have qt6-quick3d installed. Maybe it needs to be fixed in MSYS2.

@oltolm

oltolm commented Jan 1, 2025

Copy link
Copy Markdown
Contributor Author

I have created a bug report msys2/MINGW-packages#22952.

@oltolm

oltolm commented Jan 2, 2025

Copy link
Copy Markdown
Contributor Author

It may be a Qt bug, but the parameter --no-quick is completely unnecessary. If you let it out then Qt6Quick.dll will not be installed, I just tested it with the MSVC build.

@digant73

digant73 commented Jan 5, 2025

Copy link
Copy Markdown
Contributor

@oltolm are you able to compile with MSVC (I compile from VS opening the project as folder instead of the .sln) after the merge of #16497?
I got 2 errors. One is at line 33 in shared.cpp (use of __try) the second is in the new wolfssl.

@oltolm

oltolm commented Jan 5, 2025

Copy link
Copy Markdown
Contributor Author

I did have a problem with wolfssl and I pushed a fix in this PR. I didn't have a problem in shared.cpp and I don't understand how it can happen. MSVC does understand __try, clang in MSVC mode probably does too.

@digant73

digant73 commented Jan 5, 2025

Copy link
Copy Markdown
Contributor

thanks for the fix on wolfssl. Yes, the error on __try is strange. I get the following error message:

Severity	Code	Description	Project	File	Line	Suppression State	Details
Error	C2712	Cannot use __try in functions that require object unwinding 	M:\console\git\rpcs3_diga_test\build-msvc\rpcs3_diga_test	M:\console\git\rpcs3_diga_test\rpcs3\Emu\RSX\VK\vkutils\shared.cpp	13		

I would also try to move the qt libs under the folder gt6/plugins (as it is compiling from the .sln project) but it seems not working with windeployqt. I would like to understand why .sln works with gt6/plugins while cmake works with plugins


target_compile_definitions(wolfssl PUBLIC WOLFSSL_DES_ECB HAVE_WRITE_DUP)
target_compile_definitions(wolfssl PUBLIC FP_MAX_BITS=8192)
target_compile_definitions(wolfssl PUBLIC WOLFSSL_DES_ECB HAVE_WRITE_DUP FP_MAX_BITS=8192 WOLFSSL_NO_OPTIONS_H)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this should be WOLFSSL_USER_SETTINGS instead

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Setting WOLFSSL_USER_SETTINGS means that we are using user_settings.h file like 3rdparty\wolfssl\extra\win32\user_settings.h and including it in settings.h, but is this really the case?

I think we are configuring wolfssl entirely through CMake compiler flags

clang++.exe -DECC_SHAMIR -DFP_MAX_BITS=8192 -DGCM_TABLE_4BIT -DHAVE_AESGCM -DHAVE_CHACHA -DHAVE_DH_DEFAULT_PARAMS -DHAVE_ECC -DHAVE_ENCRYPT_THEN_MAC -DHAVE_EXTENDED_MASTER -DHAVE_FFDHE_2048 -DHAVE_HASHDRBG -DHAVE_ONE_TIME_AUTH -DHAVE_POLY1305 -DHAVE_PTHREAD -DHAVE_SNI -DHAVE_SUPPORTED_CURVES -DHAVE_THREAD_LS -DHAVE_TLS_EXTENSIONS -DHAVE_VULKAN -DHAVE_WRITE_DUP -DHAVE___UINT128_T -DLLVM_AVAILABLE -DMINIUPNP_STATICLIB -DNO_DES3_TLS_SUITES -DNO_DSA -DNO_MD4 -DNO_PSK -DNO_RC4 -DOPENSSL_EXTRA -DSOUNDTOUCH_ALLOW_SSE -DSOUNDTOUCH_FLOAT_SAMPLES -DST_NO_EXCEPTION_HANDLING -DTFM_ECC256 -DUNICODE -DUSE_FAST_MATH -DUSE_MULTICH_ALWAYS -DWC_NO_ASYNC_THREADING -DWC_NO_HARDEN -DWOLFSSL_ALT_CERT_CHAINS -DWOLFSSL_DES_ECB -DWOLFSSL_ENCRYPTED_KEYS -DWOLFSSL_NO_SHAKE128 -DWOLFSSL_SHA224 -DWOLFSSL_SHA3 -DWOLFSSL_SHA384 -DWOLFSSL_SHA512 -DWOLFSSL_SHAKE256 -DWOLFSSL_SYS_CA_CERTS -DWOLFSSL_USE_ALIGN -DWOLFSSL_X86_64_BUILD -DYAML_CPP_STATIC_DEFINE -DZLIB_CONST=1 -D_DEBUG -D_FILE_OFFSET_BITS=64 -D_POSIX_THREADS -D_UNICODE -D_WIN32_WINNT=0x0A00 -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_FORMAT_MACROS=1 -D__STDC_LIMIT_MACROS... -c C:/src/rpcs3/rpcs3/Emu/Cell/lv2/sys_net/lv2_socket_native.cpp

in that case WOLFSSL_NO_OPTIONS_H seems to be correct.

@Megamouse Megamouse merged commit 41a4dd4 into RPCS3:master Jan 5, 2025
@oltolm oltolm deleted the windeployqt branch January 5, 2025 22:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Build and CI Anything related to the build process and continuous integration OS: Windows

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants