One of the likely goals for 6.5 will be to switch ld(1) on amd64 from GNU binutils to LLVM lld. Here is the current fallout from a test build with lld:
benchmarks/wrk string table non-null terminated databases/pgmodeler undefined symbol: backtrace devel/ffcall can't create dynamic relocation R_X86_64_64 editors/emacs21 segfault games/tome4 undefined symbol: _Unwind_GetCFA games/warzone2100 undefined symbol: ogg_sync_init lang/crystal undefined symbol: OPENSSL_add_all_algorithms_noconf lang/fpc invalid alignment of section headers lang/gcc/4.9 section sh_addralign is not a power of 2 lang/pypy ld segfault misc/rocrail undefined symbol: operator new(unsigned long) net/telepathy/folks edbus-private not found net/transmission undefined symbol: libintl_gettext productivity/glabels edbus-private not found security/xca undefined symbol: _Unwind_Resume sysutils/firmware/vmm ld "does not properly handle alignments" sysutils/memtest86+ unknown argument: --warn-constructors x11/gnustep/terminal undefined symbol: libiconv The critical problems are ffcall and gcc49, which are dependencies for hundreds of ports. The error logs are available under http://build-failures.rhaalovely.net/amd64-clang/2018-10-14/ To try this yourself, do "ln -f /usr/bin/ld.lld /usr/bin/ld" and tweak ports/infrastructure/mk/arch-defines.mk like this: -LLD_ARCHS = aarch64 arm +LLD_ARCHS = aarch64 amd64 arm -- Christian "naddy" Weisgerber na...@mips.inka.de