[Dovecot] Compiling Dovecot 2.0.2 on Solaris 10 SPARC - libssl.so.1.0.0: open failed
I'm trying to compile the source for Dovecot 2.0.2 on a Solaris 10 SPARC machine.
uname -a SunOS ommtca013 5.10 Generic_138888-07 sun4v sparc SUNW,Sun-Blade-T6300 Solaris
cat /etc/release Solaris 10 10/08 s10s_u6wos_07b SPARC
I've installed the following binaries from sunfreeware for dovecot 1.1 to use with 2.0.2
gcc-3.4.6-sol10-sparc-local ncurses-5.7-sol10-sparc-local libiconv-1.13.1-sol10-sparc-local libintl-3.4.0-sol10-sparc-local nano-2.2.5-sol10-sparc-local gmp-4.2.1-sol10-sparc-local coreutils-8.5-sol10-sparc-local libtool-2.2.6b-sol10-sparc-local openssl-1.0.0a-sol10-sparc-local db-4.7.25.NC-sol10-sparc-local sasl-2.1.21-sol10-sparc-local openldap-2.4.22-sol10-sparc-local zlib-1.2.5-sol10-sparc-local mysql-5.0.67-sol10-sparc-local bzip2-1.0.5-sol10-sparc-local libnet-1.1.2.1-sol10-sparc-local readline-5.2-sol10-sparc-local postgresql-8.4.4-sol10-sparc-local
When I compile using:
./configure --with-ldap or CPPFLAGS="-I/usr/local/ssl/include" LDFLAGS="-L/usr/local/ssl/lib -ldl" ./configure --with-ldap or CPPFLAGS="-I/usr/local/ssl/include" LDFLAGS="-L/usr/local/ssl/lib -ldl" ./configure --with-ldap --with-ssl
I get the following error when starting up dovecot:
Sep 15 11:34:16 master: Error: service(ssl-params): child 12239 killed with signal 9 Sep 15 11:34:16 master: Error: service(ssl-params): command startup failed, throttling Sep 15 11:34:16 ssl-params: Error: ld.so.1: ssl-params: fatal: libssl.so.1.0.0: open failed: No such file or directory
libssl.so.1.0.0 exists in /usr/local/ssl/lib... which is what I've passed in LDFLAGS
What parameters am I suppose to pass to configure?
On 10-09-15 12:56 PM, Edward Carraro wrote:
I'm trying to compile the source for Dovecot 2.0.2 on a Solaris 10 SPARC machine.
[snip]
I get the following error when starting up dovecot:
Sep 15 11:34:16 master: Error: service(ssl-params): child 12239 killed with signal 9 Sep 15 11:34:16 master: Error: service(ssl-params): command startup failed, throttling Sep 15 11:34:16 ssl-params: Error: ld.so.1: ssl-params: fatal: libssl.so.1.0.0: open failed: No such file or directory
libssl.so.1.0.0 exists in /usr/local/ssl/lib... which is what I've passed in LDFLAGS
What parameters am I suppose to pass to configure?
You may not have /usr/local/ssl/lib in your runtime path. Can you send the output of 'crle'?
-- Daryl Richards Isle Technical Services Inc.
On Wed, 2010-09-15 at 12:56 -0400, Edward Carraro wrote:
libssl.so.1.0.0 exists in /usr/local/ssl/lib... which is what I've passed in LDFLAGS
What parameters am I suppose to pass to configure?
I think: LDFLAGS=-R/usr/local/ssl/lib ./configure
@Daryl
crle output:
Default configuration file (/var/ld/ld.config) not found Default Library Path (ELF): /lib:/usr/lib (system default) Trusted Directories (ELF): /lib/secure:/usr/lib/secure (system default)
@Tim compiled with:
CPPFLAGS="-I/usr/local/ssl/include" LDFLAGS="-L/usr/local/ssl/lib -R/usr/local/ssl/lib -ldl" ./configure --with-ldap --with-ssl
It now starts without any errors, however when I try to telnet localhost 143, it closes the connection right away
The error log now shows:
Sep 15 13:55:19 imap-login: Error: ld.so.1: imap-login: fatal: libgcc_s.so.1: open failed: No such file or directory Sep 15 13:55:19 master: Error: service(imap-login): child 21491 killed with signal 9 Sep 15 13:55:19 master: Error: service(imap-login): command startup failed, throttling
More info (if needed)
dump -Lv /usr/local/sbin/dovecot:
**** DYNAMIC SECTION INFORMATION **** .dynamic: [INDEX] Tag Value [1] NEEDED libdovecot.so.0 [2] NEEDED libdl.so.1 [3] NEEDED libiconv.so.2 [4] NEEDED libnsl.so.1 [5] NEEDED libsocket.so.1 [6] NEEDED librt.so.1 [7] NEEDED libsendfile.so.1 [8] NEEDED libc.so.1 [9] INIT 0x1a400 [10] FINI 0x1a41c [11] RUNPATH /usr/local/lib/dovecot:/usr/local/lib:/usr/local/ssl/lib [12] RPATH /usr/local/lib/dovecot:/usr/local/lib:/usr/local/ssl/lib [13] HASH 0x100e8 [14] STRTAB 0x118e0 [15] STRSZ 0xece [16] SYMTAB 0x108f0 [17] SYMENT 0x10 [18] CHECKSUM 0x6301 [19] VERNEED 0x127b0 [20] VERNEEDNUM 0x3 [21] PLTSZ 0x7e0 [22] PLTREL 0x7 [23] JMPREL 0x128b8 [24] RELA 0x12810 [25] RELASZ 0x888 [26] RELAENT 0xc [27] DEBUG 0 [28] FEATURE_1 PARINIT [29] FLAGS 0 [30] FLAGS_1 0 [31] PLTGOT 0x2cd9c
ldd /usr/local/sbin/dovecot libdovecot.so.0 => /usr/local/lib/dovecot/libdovecot.so.0 libdl.so.1 => /lib/libdl.so.1 libiconv.so.2 => /usr/local/lib/libiconv.so.2 libnsl.so.1 => /lib/libnsl.so.1 libsocket.so.1 => /lib/libsocket.so.1 librt.so.1 => /lib/librt.so.1 libsendfile.so.1 => /lib/libsendfile.so.1 libc.so.1 => /lib/libc.so.1 libgcc_s.so.1 => /usr/sfw/lib/libgcc_s.so.1 libmp.so.2 => /lib/libmp.so.2 libmd.so.1 => /lib/libmd.so.1 libscf.so.1 => /lib/libscf.so.1 libaio.so.1 => /lib/libaio.so.1 libdoor.so.1 => /lib/libdoor.so.1 libuutil.so.1 => /lib/libuutil.so.1 libgen.so.1 => /lib/libgen.so.1 libm.so.2 => /lib/libm.so.2 /platform/SUNW,Sun-Blade-T6300/lib/libc_psr.so.1 /platform/SUNW,Sun-Blade-T6300/lib/libmd_psr.so.1
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
On 10-09-15 2:33 PM, Edward Carraro wrote:
@Daryl
crle output:
Default configuration file (/var/ld/ld.config) not found Default Library Path (ELF): /lib:/usr/lib (system default) Trusted Directories (ELF): /lib/secure:/usr/lib/secure (system default)
@Tim compiled with:
CPPFLAGS="-I/usr/local/ssl/include" LDFLAGS="-L/usr/local/ssl/lib -R/usr/local/ssl/lib -ldl" ./configure --with-ldap --with-ssl
It now starts without any errors, however when I try to telnet localhost 143, it closes the connection right away
The error log now shows:
Sep 15 13:55:19 imap-login: Error: ld.so.1: imap-login: fatal: libgcc_s.so.1: open failed: No such file or directory Sep 15 13:55:19 master: Error: service(imap-login): child 21491 killed with signal 9 Sep 15 13:55:19 master: Error: service(imap-login): command startup failed, throttling
More info (if needed)
dump -Lv /usr/local/sbin/dovecot:
**** DYNAMIC SECTION INFORMATION **** .dynamic: [INDEX] Tag Value [1] NEEDED libdovecot.so.0 [2] NEEDED libdl.so.1 [3] NEEDED libiconv.so.2 [4] NEEDED libnsl.so.1 [5] NEEDED libsocket.so.1 [6] NEEDED librt.so.1 [7] NEEDED libsendfile.so.1 [8] NEEDED libc.so.1 [9] INIT 0x1a400 [10] FINI 0x1a41c [11] RUNPATH /usr/local/lib/dovecot:/usr/local/lib:/usr/local/ssl/lib [12] RPATH /usr/local/lib/dovecot:/usr/local/lib:/usr/local/ssl/lib [13] HASH 0x100e8 [14] STRTAB 0x118e0 [15] STRSZ 0xece [16] SYMTAB 0x108f0 [17] SYMENT 0x10 [18] CHECKSUM 0x6301 [19] VERNEED 0x127b0 [20] VERNEEDNUM 0x3 [21] PLTSZ 0x7e0 [22] PLTREL 0x7 [23] JMPREL 0x128b8 [24] RELA 0x12810 [25] RELASZ 0x888 [26] RELAENT 0xc [27] DEBUG 0 [28] FEATURE_1 PARINIT [29] FLAGS 0 [30] FLAGS_1 0 [31] PLTGOT 0x2cd9c
ldd /usr/local/sbin/dovecot libdovecot.so.0 => /usr/local/lib/dovecot/libdovecot.so.0 libdl.so.1 => /lib/libdl.so.1 libiconv.so.2 => /usr/local/lib/libiconv.so.2 libnsl.so.1 => /lib/libnsl.so.1 libsocket.so.1 => /lib/libsocket.so.1 librt.so.1 => /lib/librt.so.1 libsendfile.so.1 => /lib/libsendfile.so.1 libc.so.1 => /lib/libc.so.1 libgcc_s.so.1 => /usr/sfw/lib/libgcc_s.so.1 libmp.so.2 => /lib/libmp.so.2 libmd.so.1 => /lib/libmd.so.1 libscf.so.1 => /lib/libscf.so.1 libaio.so.1 => /lib/libaio.so.1 libdoor.so.1 => /lib/libdoor.so.1 libuutil.so.1 => /lib/libuutil.so.1 libgen.so.1 => /lib/libgen.so.1 libm.so.2 => /lib/libm.so.2 /platform/SUNW,Sun-Blade-T6300/lib/libc_psr.so.1 /platform/SUNW,Sun-Blade-T6300/lib/libmd_psr.so.1
The file that is now failing is actually /usr/local/libexec/dovecot/imap-login
Here's mine: /usr/local/libexec/dovecot/imap-login:
**** DYNAMIC SECTION INFORMATION **** .dynamic: [INDEX] Tag Value [1] NEEDED libdovecot-login.so.0 [2] NEEDED libdovecot.so.0 [3] NEEDED libssl.so.0.9.8 [4] NEEDED libcrypto.so.0.9.8 [5] NEEDED libnsl.so.1 [6] NEEDED libsocket.so.1 [7] NEEDED librt.so.1 [8] NEEDED libsendfile.so.1 [9] NEEDED libc.so.1 [10] INIT 0x8054380 [11] FINI 0x80543a0 [12] RUNPATH /usr/local/lib/dovecot:/usr/ccs/lib:/lib:/usr/lib:/usr/sfw/lib [13] RPATH /usr/local/lib/dovecot:/usr/ccs/lib:/lib:/usr/lib:/usr/sfw/lib [14] HASH 0x805015c [15] STRTAB 0x8050f40 [16] STRSZ 0xc21 [17] SYMTAB 0x8050740 [18] SYMENT 0x10 [19] SUNW_SYMTAB 0x8050560 [20] SUNW_SYMSZ 0x9e0 [21] SUNW_SORTENT 0x4 [22] SUNW_SYMSORT 0x8051ca4 [23] SUNW_SYMSORTSZ 0xbc [24] CHECKSUM 0xb69a [25] VERNEED 0x8051b64 [26] VERNEEDNUM 0x1 [27] PLTSZ 0x2a8 [28] PLTREL 0x11 [29] JMPREL 0x8051db8 [30] REL 0x8051d60 [31] RELSZ 0x300 [32] RELENT 0x8 [33] DEBUG 0 [34] FEATURE_1 PARINIT [35] SUNW_CAP 0x8050128 [36] FLAGS 0 [37] FLAGS_1 0 [38] SUNW_STRPAD 0x200 [39] SUNW_LDMACH EM_AMD64 [40] PLTGOT 0x8064bfc daryl@server:~/dovecot-2.0.2$ ldd /usr/local/libexec/dovecot/imap-login libdovecot-login.so.0 => /usr/local/lib/dovecot/libdovecot-login.so.0 libdovecot.so.0 => /usr/local/lib/dovecot/libdovecot.so.0 libssl.so.0.9.8 => /lib/libssl.so.0.9.8 libcrypto.so.0.9.8 => /lib/libcrypto.so.0.9.8 libnsl.so.1 => /lib/libnsl.so.1 libsocket.so.1 => /lib/libsocket.so.1 librt.so.1 => /lib/librt.so.1 libsendfile.so.1 => /lib/libsendfile.so.1 libc.so.1 => /lib/libc.so.1 libgcc_s.so.1 => /usr/sfw/lib/libgcc_s.so.1 libmp.so.2 => /lib/libmp.so.2 libmd.so.1 => /lib/libmd.so.1 libscf.so.1 => /lib/libscf.so.1 libuutil.so.1 => /lib/libuutil.so.1 libgen.so.1 => /lib/libgen.so.1 libsmbios.so.1 => /usr/lib/libsmbios.so.1 libm.so.2 => /lib/libm.so.2
Note, I am comparing this to an x86 box, not Sparc. I have S10 on an old E250, I will fire it up and see what happens.
Daryl Richards Isle Technical Services Inc. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
iEYEARECAAYFAkyRG/IACgkQbMWpShDgLrVkvgCgqYxlXMZaTD9xQfWXkiB1UwQK HFMAmgMuHs29aVwBOPyBt88j0t+4kSno =p+wL -----END PGP SIGNATURE-----
On 9/15/10 2:33 PM, Edward Carraro wrote:
libgcc_s.so.1 => /usr/sfw/lib/libgcc_s.so.1
obviously or not, that is your issue. /usr/sfw/lib was not listed in your LDFLAGS or in your crle. Try rebuilding Dovecot adding a -L and -R with /usr/sfw/lib.
--
Chris Hoogendyk
- O__ ---- Systems Administrator c/ /'_ --- Biology& Geology Departments (*) \(*) -- 140 Morrill Science Center
<hoogendyk@bio.umass.edu>
---------------
Erdös 4
It's working now using this for compile
CPPFLAGS="-I/usr/local/ssl/include" LDFLAGS="-L/usr/local/lib -L/usr/local/ssl/lib -R/usr/local/ssl/lib -R/usr/local/lib -ldl" ./configure --with-ldap --with-ssl
I wanted to use libgcc_s.so.1 found in /usr/local/lib instead of the one found in /usr/sfw/lib/
Thanks everyone!
participants (4)
-
Chris Hoogendyk
-
Daryl Richards
-
Edward Carraro
-
Timo Sirainen