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.