#1101683 firefox: Please use alternative linker on ppc64 as lld is unsupported

#1101683#5
Date:
2025-03-30 08:40:06 UTC
From:
To:
Hi,

firefox currently fails to build from source on ppc64 since the linker
in use (lld) does not support ppc64 with ELF ABI version 1 [1]:

checking what kind of list files are supported by the linker...
DEBUG: Creating `/tmp/conftestj70e_oyy.c` with content:
DEBUG: | int main() {}
DEBUG: Executing: `/usr/bin/clang /tmp/conftestj70e_oyy.c -c -o /tmp/conftestvirsugve.o`
DEBUG: Executing: `/usr/bin/clang -fuse-ld=lld -o /tmp/conftestvjo35x09.out -Wl,@/tmp/conftestw9ckkapq.list`
DEBUG: The command returned non-zero exit status 1.
DEBUG: Its error output was:
DEBUG: | ld.lld: error: /lib/powerpc64-linux-gnu/Scrt1.o: ABI version 1 is not supported
DEBUG: | clang: error: linker command failed with exit code 1 (use -v to see invocation)
DEBUG: Executing: `/usr/bin/clang -fuse-ld=lld -o /tmp/conftestvjo35x09.out -Wl,@/tmp/conftestw9ckkapq.list`
DEBUG: The command returned non-zero exit status 1.
DEBUG: Its error output was:
DEBUG: | ld.lld: error: /lib/powerpc64-linux-gnu/Scrt1.o: ABI version 1 is not supported
DEBUG: | clang: error: linker command failed with exit code 1 (use -v to see invocation)
DEBUG: Executing: `/usr/bin/clang -fuse-ld=lld -o /tmp/conftestvjo35x09.out @/tmp/conftestw9ckkapq.list`
DEBUG: The command returned non-zero exit status 1.
DEBUG: Its error output was:
DEBUG: | ld.lld: error: /lib/powerpc64-linux-gnu/Scrt1.o: ABI version 1 is not supported
DEBUG: | clang: error: linker command failed with exit code 1 (use -v to see invocation)
ERROR: Couldn't find one that works

Switching to ld.bfd or mold with passing "-fusing-ld=" to clang should fix the problem.

Thanks,
Adrian