dyndb regression: bind fails to build --without-dlopen

Peter Volkov peter.volkov at gmail.com
Mon May 8 08:01:51 UTC 2017


Hello.

bind 9.10.x and 9.11.x fails to build if ./configure'ed --without-dlopen[1]:

libtool: compile:  x86_64-pc-linux-gnu-gcc -I/var/tmp/portage/net-dns/
bind-9.11.0_p1/work/bind-9.11.0-P1 -I../.. -I./include -I../dns/include
-I/var/tmp/portage/net-dns/bind-9.11.0_p1/work/bind-9.11.0-P1/lib/dns/include
-I../../lib/dns/include -I/var/tmp/portage/net-dns/
bind-9.11.0_p1/work/bind-9.11.0-P1/lib/isc/include -I../../lib/isc
-I../../lib/isc/include -I../../lib/isc/unix/include
-I../../lib/isc/nothreads/include -I../../lib/isc/x86_32/include
-I../../lib/irs/include -I../../lib/irs/include -DVERSION=\"9.11.0-P1\"
-DSYSCONFDIR=\"/etc/bind\" -D_GNU_SOURCE -march=core2
-freorder-blocks-and-partition -O2 -pipe -W -Wall -Wmissing-prototypes
-Wcast-qual -Wwrite-strings -Wformat -Wpointer-arith -fno-strict-aliasing
-fno-delete-null-pointer-checks -c nsprobe.c -o nsprobe.o >/dev/null 2>&1
libtool: link: x86_64-pc-linux-gnu-gcc -march=core2
-freorder-blocks-and-partition -O2 -pipe -Wl,-O1 -o .libs/sample-gai
.libs/sample-gai.o  -Wl,--as-needed ../irs/.libs/libirs.so
../dns/.libs/libdns.so ../isccfg/.libs/libisccfg.so
/var/tmp/portage/net-dns/bind-9.11.0_p1/work/bind-9.11.0-P1/lib/dns/.libs/libdns.so
/var/tmp/portage/net-dns/bind-9.11.0_p1/work/bind-9.11.0-P1/lib/isccc/.libs/libisccc.so
/var/tmp/portage/net-dns/bind-9.11.0_p1/work/bind-9.11.0-P1/lib/isc/.libs/libisc.so
../isc/.libs/libisc.so -lcap -lz
../dns/.libs/libdns.so: undefined reference to `dlopen'
../dns/.libs/libdns.so: undefined reference to `dlclose'
../dns/.libs/libdns.so: undefined reference to `dlerror'
../dns/.libs/libdns.so: undefined reference to `dlsym'
collect2: error: ld returned 1 exit status
make[2]: *** [Makefile:463: sample-gai] Error 1

This fails under lib/samples/, but the problem is with libdns.so/la itself.
Failure was introduced by "merge dyndb" commit:
https://source.isc.org/cgi-bin/gitweb.cgi?p=bind9.git;a=commit;h=
a00f9e2f50675bd43cc6a9fe2669709162a2ccb4
lib/dns/dyndb.c has dlopen() reference, but configure still allows to
disable -ldl (--without-dlopen) and thus libdns.la will be linked without
-ldl. Probably correct fix will be to remove --with/without-dlopen option
from ./configure.


Ref:
[1] https://bugs.gentoo.org/show_bug.cgi?id=600212

--
Peter.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.isc.org/pipermail/bind-users/attachments/20170508/ed679551/attachment.html>


More information about the bind-users mailing list