Directly using lld as linker does not work on any UNIX target. On UNIX you are expected to invoke gcc or clang and then gcc/clang will invoke the linker and pass all arguments necessary for producing a valid binary for the target like the linker search path.
You have to use -Zlinker-features=+lld
(or if you are on stable, install lld using your package manager and use -Clink-arg=-fuse-ld=lld
) to make rustc tell gcc/clang to invoke lld as linker in the place of whatever default there is.