Why the --disable-ipv6 option does not work?

won seok wsbaek at empal.com
Fri Jun 11 05:51:58 UTC 2004


Dear Edvard.

In fact, I have to port the Bind9 to mips board. 
The Bind9 is compiled very well when I used gcc. 
But there happened to appear errors about ipv6 when I tried to compile
it using mips cross compiler.
So I thought that the configure file of bind9 should be changed to
ignore ipv6 functionality of my development pc.

If you can give more advice to me, please read the following current
status.
1) ./configure --with-openssl=/root/openssl-0.9.7d  
        <--- the openssl is compiled by cross compiler. 
2) gmake CC=... mipsel-uclibc-gcc 
        <--- cross compiling
    ..........
    ./gen: cannot execute binary file. 
        <--- now the gen file is built with cross comipler so it can't
run on x86 machine. so returns error.
3) gmake 
4) copy files which are generated by gen utility to proper locations.
( code.h rdatastruct.h enumclass.h enumtype.h )
5) repeat the above 2)
     ..........
     error  about ipv6
6) modify the Makefile (bind9) 
     <--- I commented all ipv6 check lines. ( more 300 lines ) 
7) gmake CC=... mipsel-uclibc-gcc
    ............
    gmake[4]: exit `/root/bind-9.3.0beta4/lib/isc/unix/include'
directory
/export/ADM5120/mipsel-linux-uclibc/bin/mipsel-uclibc-gcc  -g -O2
-I/root/bind-9.3.0beta4 -I./include -I./../nothreads/include
-I../include -I./../include -I./..      -W -Wall -Wmissing-prototypes
-Wcast-qual -Wwrite-strings -Wformat  -c interfaceiter.c
In file included from include/isc/net.h:90,
                 from ../include/isc/netaddr.h:24,
                 from ../include/isc/interfaceiter.h:46,
                 from interfaceiter.c:33:
../include/isc/ipv6.h:63: redefinition of `struct in6_addr'
../include/isc/ipv6.h:81: redefinition of `struct sockaddr_in6'
In file included from ../include/isc/netaddr.h:24,
                 from ../include/isc/interfaceiter.h:46,
                 from interfaceiter.c:33:
include/isc/net.h:172: redefinition of `struct in6_pktinfo'
gmake[3]: *** [interfaceiter.o] Error 1
gmake[3]: Exit `/root/bind-9.3.0beta4/lib/isc/unix' directory
gmake[2]: *** [subdirs] Error 1
gmake[2]: Exit `/root/bind-9.3.0beta4/lib/isc' directory
gmake[1]: *** [subdirs] Error 1
gmake[1]: Exit `/root/bind-9.3.0beta4/lib' directory
gmake: *** [subdirs] Error 1

[~/bind-9.3.0beta4]_

Thak you for your kind advice. 



Best  Regards. 


Edvard Tuinder <listbind at lunytune.nl> wrote in message news:<caacui$163f$1 at sf1.isc.org>...
> According to won seok:
> > Dear Edvard
> > 
> > Thank you for your advice. 
> > According to your opinion, I tried to compile the kernel again to
> > exclude the IPv6 function.
> > But unfortunately it gave me another problem. I must have more skill
> > to compile the kernel.
> > So, I decided to modify the configure file of the Bind9 so as not to
> > detect the ipv6 functionality. It seemed to succeed. It shows "no" at
> > checking ipv6 releated function. But the compilation of the bind9
> > still showed any errors.
> 
> I didn't exactely say to recompile the linux kernel without IPv6 support.
> I said to take care to have no active IPv6 interface, so do not configure
> them, even though your kernel might support it.
> 
> Also do not try to hack the configure script. If you really really want to,
> you could modify configure.in, but you really shouldn't.
> 
> Just compile bind as it is, it does not really matter if it has IPv6 support.
> If your system has no IPv6 interfaces, or you use the listen-on-v6 { none;};
> option, bind will not do IPv6.
> 
> So compile all programs (kernel and bind) just as they are and let them decide
> to add IPv6 as they see fit. You just take care to have either no IPv6 interfaces
> or specifically tell bind (the run-time) to not use them.
> 
> -Ed


More information about the bind-users mailing list