Fix for Issue #1600 - Fixed Windows Installation - Windows: bundle MinGW runtime DLLs recursively (fixes missing OpenSSL dlls)
The Windows portable build and NSIS installer were missing runtime DLLs provided by MinGW, specifically OpenSSL 3 (libcrypto-3-x64.dll, libssl-3-x64.dll). This caused the installer build to fail at runtime on clean Windows systems.
This change updates the Windows dependency bundling step to:
- Use ntldd -R (when available) to recursively resolve PE dependencies
- Copy all MinGW runtime DLLs into the portable directory
- Fall back to ldd if ntldd is not available (e.g. clangarm64)
No workflow changes were made. The fix is limited to the __windows_copy_deps target in the Makefile.
Results:
- OpenSSL runtime DLLs are now bundled correctly.
- The Windows installer launches on clean systems without requiring MSYS2 or a system OpenSSL installation.
- Reduces risk of future missing DLL issues due to indirect dependencies.
Fixes: #1600
Demonstration of Tuba running on Windows 11:
<img width="911" height="727" alt="image" src="https://github.com/user-attachments/assets/95c2fca2-63cb-4c69-a3a9-afa11918155e" />
合并状态:未合并 9 条评论