trouble compiling Dovecot 2.2.31 on Solaris 10 SPARC - libssl_iostream_openssl.so is not portable!
James
list at xdrv.co.uk
Fri Aug 25 16:36:10 EEST 2017
On 25/08/2017 04:52, Jerry Kemp wrote:
Hello Jerry,
> attempting to compile dovecot 2.2.31 on Sun/Oracle Solaris 10 SPARC.
It worked for me so you should make it to your goal.
> configure goes fine. First sign of problems during compile is with
> this warning:
>
> ...............................................
> *** libssl_iostream_openssl.so is not portable!
That's just libtool whinging. I see the same.
> system ZLIB library is/was 32 bit, and if there is a 64 bit version
> provided by Sun/Oracle, neither myself or the "configure" script could
> locate it. Not a big detail, ZLIB is an easy compile, just trying to
> share all relevant data.
$ file /usr/lib/64/libz.so
/usr/lib/64/libz.so: ELF 64-bit MSB dynamic lib SPARCV9 Version 1,
dynamically linked, not stripped, no debugging information available
The compiler should find by itself
$ cc -m64 junk.c -lz
$ ldd a.out
libz.so.1 => /usr/lib/64/libz.so.1
libc.so.1 => /lib/64/libc.so.1
libm.so.2 => /lib/64/libm.so.2
/platform/SUNW,Sun-Blade-1000/lib/sparcv9/libc_psr.so.1
...but I build my own zlib and use a 32-bit dovecot anyway.
> Undefined first referenced
> symbol in file
> ERR_clear_error ../lib-ssl-iostream/.libs/libssl_iostream_openssl.so
> SSL_load_error_strings ../lib-ssl-iostream/.libs/libssl_iostream_openssl.so
> BIO_ctrl_get_write_guarantee
...
> ld: fatal: symbol referencing errors. No output written to
> .libs/test-http-client
>
> collect2: ld returned 1 exit status
>
> *** Error code 1
>
> make: Fatal error: Command failed for target `test-http-client'
ERR_clear_error is in libcrypto:
$ nm -D path/to/libcrypto.so.1.0.0 | grep ERR_clear_error
[3834] | 920944| 140|FUNC |GLOB |3 |11 |ERR_clear_error
Check that your link flags have a -L to libcrypto (ultimately a run path
too). Check libtool is not changing your flags because it thinks it
knows better. Extract the link commands from your log/output and run
manually, add/remove compiler flags, change link paths, hopefully you
will find the fault.
James.
More information about the dovecot
mailing list