Subject: | Problem with the new libedit in bIND 9.9.8 and 9.10.3 on FreeBSD 11 |
Date: | Wed, 23 Sep 2015 16:51:40 +0200 |
To: | bind9-bugs@isc.org |
From: | "Mathieu Arnold" <mat@FreeBSD.org> |
Hi,
When I was updating the FreeBSD ports for the beta and pre-releases, while
testing on 9 and 10, our QA tools told me that it was wrongfully linking to
libedit from the base system, so I added a dependency on the libedit port.
It was happy and all, and it linked to the correct libedit.
But I did not test on FreeBSD 11. FreeBSD 11 has libedit in the base
system, but it does not have the readline/readline.h compat shims, so,
configure passes because, hey, linking to -ledit works, great, but build
fails later because:
cc -pthread -I/wrkdirs/usr/ports/dns/bind99/work/bind-9.9.8 -I./include
-I/wrkdirs/usr/ports/dns/bind99/work/bind-9.9.8/lib/dns/include
-I../../lib/dns/include
-I/wrkdirs/usr/ports/dns/bind99/work/bind-9.9.8/lib/bind9/include
-I../../lib/bind9/include
-I/wrkdirs/usr/ports/dns/bind99/work/bind-9.9.8/lib/isc/include
-I../../lib/isc -I../../lib/isc/include -I../../lib/isc/unix/include
-I../../lib/isc/pthreads/include -I../../lib/isc/x86_32/include
-I/wrkdirs/usr/ports/dns/bind99/work/bind-9.9.8/lib/lwres/include
-I../../lib/lwres/unix/include -I../../lib/lwres/include
-I/wrkdirs/usr/ports/dns/bind99/work/bind-9.9.8/lib/isccfg/include
-I../../lib/isccfg/include -I/usr/local/include -D_REENTRANT
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DVERSION=\"9.9.8\"
-DDIG_SIGCHASE=1 -D_THREAD_SAFE -O2 -pipe -isystem /usr/local/include
-fstack-protector -fno-strict-aliasing -I/usr/local/include/libxml2
-I/usr/include -W -Wall -Wmissing-prototypes -Wcast-qual -Wwrite-strings
-Wformat -Wpointer-arith -fno-strict-aliasing -c nslookup.c
nslookup.c:48:10: fatal error: 'readline/readline.h' file not found
#include <readline/readline.h>
Full log available here:
<http://beefy4.isc.freebsd.org/data/head-amd64-default/p397526_s288081/logs/errors/bind99-9.9.8.log>
I tried fiddeling a bit with the --with-readline option, which excuse my
french, but should not be called --with-readline, but --readline-libs or
something else, because, contrary to all the --with-foo configure arguments
I ever saw, it does not take a path, but it takes arguments to be passed to
the compiler, but it only uses them for the configure phase, it does not
use it afterwards. At all...
So I'm kinda wondering how I should go on fixing this, before I go on and
use a chainsaw with the sources so that it builds.
Regards,
--
Mathieu Arnold
Message body not shown because it is not plain text.