-
Notifications
You must be signed in to change notification settings - Fork 180
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
build issue: ld.lld #2986
Comments
The intention of using LLD when available was to enable fast (incremental) build times by default (especially for non-developers who want to build MRtrix3). I admit that overriding toolchain defaults is undesirable though and we should probably not mess with that. Maybe it's best to hide this behind a
Yes, this also makes sense to me. |
We no longer use LLD by default if it is available for reasons mentioned in #2986. The use of LLD can now be enabled by using -DMRTRIX_USE_LLD=ON. Additionally, we use CMake's check_cxx_compiler_flag to see if the compiler supports LLD regardless of the platform (instead of simply relying on the presence of ld.lld).
Closed by #2989. |
Describe the bug
Sometimes
ld.lld
can be located as an executable, but not used by the compiler:-fuse-ld=lld
fails.Locating happens here
mrtrix3/cmake/LinkerSetup.cmake
Line 11 in 025eb0f
Setting the linker flag here:
mrtrix3/cmake/LinkerSetup.cmake
Lines 16 to 22 in 025eb0f
Two requests:
lld
may work well, but let it be a user choice instead of overriding toolchain defaults.-fuse-ld=lld
with try-compile instead of searching forld.lld
the executable.Platform/Environment/Version
Please provide the following information:
The text was updated successfully, but these errors were encountered: