I'm working on switching to LLVM's lld linker as the FreeBSD system linker (/usr/bin/ld), and the port in this PR is reported as a new failure in the exp-run, PR 214864.
An excerpt from the build log:
checking the id3lib version... configure: error: could not determine id3lib version
===> Script "configure" failed unexpectedly.
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.
Via tobik@ in ports r465725, BINARY_ALIAS=ld=ld.bfd may be an effective workaround if LLD_UNSAFE does not work.
Hm, in config.log there is more details on this failure:
configure:18938: cc -o conftest -g -fstack-protector -fno-strict-aliasing -I/usr/local/include -DHAVE_GTK -fstack-protector conftest.c -lid3 -L/usr/local/lib >&5
configure:18938: $? = 0
/usr/local/lib/libid3-3.8.so.3: Undefined symbol "_ZTVN10__cxxabiv120__si_class_type_infoE"
It looks like it's really pulling in come c++ stuff:
$ nm --demangle -D /usr/local/lib/libid3-3.8.so.3|grep class
U vtable for __cxxabiv1::__class_type_info
U vtable for __cxxabiv1::__si_class_type_info
I can get it to build by explicitly adding -lstdc++ to id3's LIBS.
--- configure.bak 2016-12-05 23:32:24.000000000 +0400
+++ configure 2018-03-28 20:21:24.641935000 +0400
@@ -18871,7 +18871,7 @@
-for ac_lib in '' "id3" "id3 -lstdc++" "id3 -lz" "id3 -lz -lstdc++"; do
+for ac_lib in "id3 -lz -lstdc++"; do
if test -z "$ac_lib"; then
I'm not sure though where this comes from and why FreeBSD linker does not complain about that?
A commit references this bug:
Date: Sat Mar 31 12:09:11 UTC 2018
New revision: 466044
audio/easytag: fix build with lld
When detecting libid3, make sure to add -lstdc++ to its LIBS, otherwise with
lld easytag's configure script fails to run its test binaries it complies to
detect libid3 and fails.
Reported by: emaste
Should be fine now, thanks for report.