Docs: bundled LLD needs mingw-w64's ktmw32, propsys and version import libraries too (refs #1886)

This commit is contained in:
tylerjenningsw committed 2026-10-29 17:27:26 -04:00
1 parent 09d41e54ca
commit 6e7a008f6f
1 file changed
+9 -6
+9 -6
View File
@@ -56,15 +56,18 @@ An older MinGW earlier on `PATH` can break the build: CodeBlocks' GCC 8.1 fails
`boa_engine` ([#1882](https://github.com/storytold/effectcraft/issues/1882)).
Rust's bundled LLD and self-contained libraries don't include every import library EffectCraft
needs, so on their own they stop with `unable to find library -lshlwapi`
([#1886](https://github.com/storytold/effectcraft/issues/1886)). To link that way, copy
mingw-w64's `libshlwapi.a` into a folder of its own and add that folder to the search path in your
own Cargo config (`%USERPROFILE%\.cargo\config.toml`). Don't add all of mingw-w64's `lib` folder:
its C runtime clashes with Rust's bundled one (`undefined symbol: DllEntryPoint`).
needs, so on their own they stop with `unable to find library` for `-lshlwapi`, `-lktmw32`,
`-lpropsys` and `-lversion` ([#1886](https://github.com/storytold/effectcraft/issues/1886)). To
link that way, copy those four from mingw-w64 into a folder of its own and add that folder to the
search path in your own Cargo config (`%USERPROFILE%\.cargo\config.toml`). Don't add all of
mingw-w64's `lib` folder: its C runtime clashes with Rust's bundled one
(`undefined symbol: DllEntryPoint`).
```powershell
New-Item -ItemType Directory -Force C:\gnu-import-libs
Copy-Item C:\msys64\mingw64\lib\libshlwapi.a C:\gnu-import-libs\
foreach ($lib in "shlwapi", "ktmw32", "propsys", "version") {
Copy-Item "C:\msys64\mingw64\lib\lib$lib.a" C:\gnu-import-libs\
}
```
```toml