I'm working on switching to LLVM's lld linker as the FreeBSD system linker (/usr/bin/ld)[1], and the port in this PR is reported as a new failure in the exp-run, PR 214864. An excerpt from the build log[2]: --- checking OS and machine type... on FreeBSD. checking libraries... checking libunwind... libunwind is missing. Error: libunwind-devel is required. ===> Script "configure" failed unexpectedly. --- The configure failure may be due to shared object protected visibility symbol preemption issues; setting LLD_UNSAFE=yes may be a suitable workaround (to use ld.bfd). FreeBSD 11 and later have lld available as /usr/bin/ld.lld, so one simple option for testing is to just symlink /usr/bin/ld to ld.lld (and restore it to ld.bfd). A port Makefile knob, LLD_UNSAFE=yes, exists to indicate that a port does not work with lld, and requires either /usr/bin/ld.bfd or binutils from ports. This should work for the common case of ports written in C using GNU autoconf; it may have no effect on other ports. [1] https://lists.freebsd.org/pipermail/freebsd-current/2018-March/068985.html [2] http://package18.nyi.freebsd.org/data/headamd64PR214864-default/2018-03-21_17h43m11s/logs/errors/memleax-1.0.3.log
A commit references this bug: Author: tobik Date: Wed May 30 12:34:16 UTC 2018 New revision: 471131 URL: https://svnweb.freebsd.org/changeset/ports/471131 Log: Mark devel/memleax LLD_UNSAFE same as devel/libunwind /usr/bin/ld: error: cannot preempt symbol: _Ux86_64_create_addr_space >>> defined in /usr/local/lib/libunwind-x86_64.so >>> referenced by tmp.c >>> /tmp/tmp-e91e1b.o:(main) PR: 226994 Submitted by: emaste Changes: head/devel/memleax/Makefile