https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104707
Tan xc <sterprim at outlook dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- Component|target |other Version|11.2.0 |12.2.0 Summary|gcc on riscv64 isn't |GCC doesn't give default |passing entire library path |lib path to the linker when |to the linker |multilib is off Target|riscv64-unknown-linux-gnu | --- Comment #6 from Tan xc <sterprim at outlook dot com> --- This has been a lingering issue since the old days. GCC deliberately dismisses well-known library paths when invoking the linker. When multilib is on, the %D specifier in the spec automagically inserts library path from multilib option, which conceals this problem. While this logic saves a little parameter size, there is no need to keep saving the space of the parameters, since all modern operating systems have a large enough parameter space (all of them have 262k at least). This prevents GCC from working with other linkers correctly.