Unbound 1.9.3 released

Yuri yvoinov at gmail.com
Thu Aug 29 07:43:12 UTC 2019


Thank you, Jaco, but this not solves my problem.

I have Solaris 10u13 with Oracle Developer Studio 12.6 on SPARC-IV+ (so,
incompatible with Solaris 11.x).

29.08.2019 13:29, Jaco Lesch via Unbound-users пишет:
> On 8/28/19 18:49, Yuri via Unbound-users wrote:
>> 28.08.2019 18:23, Wouter Wijngaards via Unbound-users пишет:
>>> Hi Yuri,
>>>
>>> On 27/08/2019 19:45, Yuri via Unbound-users wrote:
>>>> 27.08.2019 21:22, Yuri пишет:
>>>>> 27.08.2019 21:17, Wouter Wijngaards via Unbound-users пишет:
>>>>>> Hi Yuri,
>>>>>>
>>>>>> If that is any similar to yours, the ./configure --disable-shared
>>>>>> flag
>>>>>> could fix it.
>>>> Tried with same error:
>>> It looks like the flag makes the library build pass, but this link
>>> fails
>>> because of (what may also be the first error) unrecognised options.
>>>
>>> Can you give the full commandline that failed, and also a couple before
>>> it (the libtool invocation, and then the compiler and linker lines).
>>> The flags on it, we can try to change them to see which one is the
>>> problem.  Something that looks like -...h... is what I guess from the
>>> link you sent.
>> Failed all object and binaries link call. Which one?
>>> You could edit the CFLAGS, CPPFLAGS in the Makefile to try different
>>> options, or enter the commandline by hand ('#' makes comments in the
>>> Makefile, or copy to a backup file so you can try different changes).
>>> Try to remove the '-pthread', because there is an 'h' in that and
>>> solaris has a different threading model (the '-mt' option enables the
>>> solaris threading I believe).  Maybe the '/usr/local/lib/libevent.so'
>> Let's take a look on configure options:
>>
>> ./configure --prefix=/usr/local
>> --with-conf-file=/usr/local/etc/unbound/unbound.conf
>> --with-username=unbound --with-ssl=/opt/csw --with-libevent=/usr/local
>> --with-libexpat=/opt/csw --without-pthreads --with-solaris-threads
>> --enable-tfo-client --with-pidfile=/tmp/unbound.pid 'CFLAGS=-xO4 -m64
>> -xlinkopt=2' 'CPPFLAGS=-I/opt/csw/include' 'LDFLAGS=-m64
>> -L/opt/csw/lib/64 -xlinkopt=2'
>>
>> Solaris support POSIX threads since at least Developer Studio 12.4, If I
>> remember correct. I've specified explicity use native, however, for
>> Unbound since 2014.
>>
>>> needs to change into '-levent' because citing the .so directly is a gcc
>>> feature (I thought).  Maybe there are other options that cause issues,
>>> like warning options or the '-flto' option (disabled with
>>> --disable-flto
>>> for configure).
>> LTO does not supported by SunPro, only -xlinkopt.
>>>
>>> Best regards, Wouter
>>>
>>>
>>>> nsport.o outside_network.o ub_event.o keyraw.o sbuffer.o wire2str.o
>>>> parse.o parseutil.o rrdef.o str2wire.o explicit_bzero.o reallocarray.o
>>>> arc4random.o arc4random_uniform.o arc4_lock.o getentropy_solaris.o
>>>> strsep.o  -L/opt/csw/lib/64 -L/opt/csw/lib -L/usr/local/lib -lssl
>>>> /usr/local/lib/libevent.so -lsendfile -lrt -lsocket -lnsl -lcrypto
>>>> -lmd
>>>> -pthreads -mt -Wl,-rpath -Wl,/usr/local/lib -Wl,-rpath
>>>> -Wl,/usr/local/lib -Wl,-rpath -Wl,/opt/csw/lib
>>>> cc: postopt failed for unbound-checkconf
>>>> gmake: *** [Makefile:335: unbound-control] Error 2
>>>> gmake: *** [Makefile:332: unbound-checkconf] Error 2
>>>> ld: fatal: soname option (-h, --soname) is incompatible with
>>>> building a
>>>> dynamic executable
>>>> ld: fatal: flags processing errors
>>>> postopt: error: ld failed to link the binary
>>>> cc: postopt failed for unbound
>>>> gmake: *** [Makefile:329: unbound] Error 2
>>>>
>>>> Static library built, but no one executable linked.
>>>>
>>>>
> Yuri
>
> From my side I was able to successfully compile Unbound 1.9.3 on
> Solaris 11.4 SPARC with Studio 12.6, linked to libev 4.24. The output
> from './unbound -V':
> --------------------------------------------------------------------------------------
>
> Version 1.9.3
>
> Configure line: --prefix=/opt/local --libdir=/opt/local/lib/sparcv9
> --sysconfdir=/etc --with-username=dnsadmin --with-libevent=/opt/local
> --disable-gost --disable-ecdsa
> Linked libs: libev 4.24 (it uses not obtainable), OpenSSL 1.0.2q 20
> Nov 2018
> Linked modules: dns64 respip validator iterator
>
> BSD licensed, see LICENSE in source package for details.
> Report bugs to unbound-bugs at nlnetlabs.nl or
> https://github.com/NLnetLabs/unbound/issues
> --------------------------------------------------------------------------------------
>
>
>
> And I compiled it with the following settings:
> --------------------------------------------------------------------------------------
>
> CC="/opt/SunStudio/OracleDeveloperStudio12.6-solaris-sparc-bin/developerstudio12.6/bin/cc"
>
> CFLAGS="-m64 -xO4 -Qoption cg -xregs=no%appl -W2,-xwrap_int
> -xmemalign=16s"
> CPPFLAGS="-I/opt/local/include"
> LDFLAGS="-L/opt/local/lib/64"
>
>
> ./configure --prefix=/opt/local \
>         --libdir=/opt/local/lib/sparcv9 \
>         --sysconfdir=/etc \
>         --with-username=dnsadmin \
>         --with-libevent=/opt/local \
>         --disable-gost --disable-ecdsa
> --------------------------------------------------------------------------------------
>
>
> According the Studio manpage on cc, the "-mt" is used by default for
> multithreaded code and the binary then links to
> '/lib/64/libpthread.so.1'.

Yes, I know about it. Im using it in my own projects for years. But the
issue is not -mt, but -soname option.

Just take a look on my configure more closely:

./configure --prefix=/usr/local
--with-conf-file=/usr/local/etc/unbound/unbound.conf
--with-username=unbound --with-ssl=/opt/csw --with-libevent=/usr/local
--with-libexpat=/opt/csw --without-pthreads --with-solaris-threads
--enable-tfo-client --with-pidfile=/tmp/unbound.pid 'CFLAGS=-xO4 -m64
-xlinkopt=2' 'CPPFLAGS=-I/opt/csw/include' 'LDFLAGS=-m64
-L/opt/csw/lib/64 -xlinkopt=2'

AFAIK, --without-pthreads --with-solaris-threads should set
thread-related flags correctly, right?


>
> Hope this helps you with your problem.
>
> Regards
>
-- 
"C++ seems like a language suitable for firing other people's legs."

*****************************
* C++20 : Bug to the future *
*****************************


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: OpenPGP digital signature
URL: <http://lists.nlnetlabs.nl/pipermail/unbound-users/attachments/20190829/5da004cf/attachment.bin>


More information about the Unbound-users mailing list