Maintained by: NLnet Labs

[Unbound-users] Unbound release 1.4.12

lst_hoe02 at kwsoft.de
Wed Nov 2 14:40:43 CET 2011


Zitat von "W.C.A. Wijngaards" <wouter at NLnetLabs.nl>:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Hi Andreas,
>
> On 11/02/2011 01:30 PM, lst_hoe02 at kwsoft.de wrote:
>> Zitat von "W.C.A. Wijngaards" <wouter at NLnetLabs.nl>:
>>
>>> -----BEGIN PGP SIGNED MESSAGE-----
>>> Hash: SHA1
>>>
>>> On 07/18/2011 10:00 PM, Juergen Daubert wrote:
>>>> On Mon, Jul 18, 2011 at 05:19:35PM +0200, Gábor Lénárt wrote:
>>>>
>>>> [...]
>>>>
>>>>> However, I am still having problems to get the "old behaviour". How
>>>>> can I
>>>>> compile unbound to link against libldns statically? I couldn't
>>>>> figure out
>>>>> without ugly hacks (see my previous mail), it seems even
>>>>> "--enable-static-exe" does not work (and also it sounds a bit
>>>>> "dangerous"
>>>>> when help of the configure script talks about "for debug purposes"),
>>>>> ldns
>>>>> is still linked dynamically, at least output of ldd on unbound binary
>>>>> shows libldns too.
>>>>
>>>> Build but _not_ install ldns <somewhere> with the configure option
>>>> --disable-shared. After that configure unbound to use your just built
>>>> ldns with --with-ldsn=<somewhere>, thats all ;)
>>>
>>> Yes that is a way to install from source:
>>>    get ldns; unpack, ./configure --disable-shared; make
>>>    get unbound; unpack, ./configure --with-ldns=theldnsbuilddir; make
>>> This results in a static link to the ldns library.  Unbound can use the
>>> ldns compile build directory directly, you do not have to install the
>>> ldns you link to.
>>> (If you want to static link to libevent, do the same for libevent).
>>
>> This does not work for me on Linux x64...
>>
>> /usr/bin/ld: /root/install/build/ldns/lib/libldns.a(rdata.o): relocation
>> R_X86_64_32S against `.rodata' can not be used when making a shared
>> object; recompile with -fPIC
>> /root/install/build/ldns/lib/libldns.a: could not read symbols: Bad value
>> collect2: ld returned 1 exit status
>> make: *** [libunbound.la] Fehler 1
>>
>> Should ldns be built with -fPIC or unbound??
>
> Sounds like you have configured ldns --disable-shared, but unbound does
> not have this option, and is trying to compile a shared library
> (libunbound), and cannot find pic code for ldns.
>
> You could configure unbound --disabled-shared too, and then it does not
> build the shared libunbound.
>
> Best regards,
>    Wouter
>
>> On the same OS (ia32 ) it works as expected, it's unbound 1.4.13 BTW.

Hello Wouter

Thanks, it works indeed with also supplying "--disable-shared" for  
unbound, and not only for ldns. Strange thing is that it works on the  
same OS (32 Bit) without. Is this expected behaviour?

Regards

Andreas