[Date Prev][Date Next] [Chronological] [Thread] [Top]

2.3.11 on AIX 5.2



Anyone have 2.3.11 running _with_ module support on AIX? Using the
stock 2.3.11, compiled with our version of Berkeley DB 4.2.52,
Cyrus-SASL 2.1.20, OpenSSL 0.9.7b, and libtool 1.5 (for ltdl):
  $ cd /opt/build
  $ gtar zxf /opt/src/db/openldap-2.3.11/src/openldap-2.3.11.tgz
  $ cd openldap-2.3.11
  $ CC=xlc_r CFLAGS="-qarch=com" LDFLAGS="-Wl,-brtl -Wl,-blibpath:/opt/TWWfsw/libdb42/lib:/opt/TWWfsw/libopenssl097/lib:/opt/TWWfsw/libtool15/lib:/opt/TWWfsw/libsasl21/lib:/usr/lib -L/opt/TWWfsw/libdb42/lib -L/opt/TWWfsw/libopenssl097/lib -L/opt/TWWfsw/libtool15/lib -L/opt/TWWfsw/libsasl21/lib" CPPFLAGS="-I/opt/TWWfsw/libdb42/include -I/opt/TWWfsw/libopenssl097/include -I/opt/TWWfsw/libtool15/include -I/opt/TWWfsw/libsasl21/include" bash ./configure --without-readline --enable-static --enable-shared --with-subdir=no --with-cyrus-sasl --enable-spasswd --with-tls=openssl --enable-slurpd --enable-bdb=mod --enable-dnssrv=mod --enable-hdb=mod --enable-ldap=mod --enable-ldbm=mod --enable-ldbm-api=berkeley --enable-meta=mod --enable-monitor=mod --enable-null=mod --enable-passwd=mod --enable-relay=mod --enable-overlays=mod --enable-modules --enable-crypt --disable-dependency-tracking --prefix=/tmp/ldap
  $ gmake
  $ gmake install
  [
   modify /tmp/ldap/etc/slapd.conf to load back_ldap.la:
     modulepath      /tmp/ldap/libexec
     moduleload      back_bdb.la
     moduleload      back_ldap.la
     moduleload      back_ldbm.la
     moduleload      back_passwd.la
  ]
  # /tmp/ldap/libexec/slapd

  $ tail /var/adm/messages
  Oct 30 22:12:38 slapd[475348]: lt_dlopenext failed: (back_bdb.la) rtld: 0712-001 Symbol backend_add was referenced       from module (), but a runtime definition       of the symbol was not found. rtld: 0712-001 Symbol ch_free was referenced       from module (), but a runtime definition       of the symbol was not found. rtld: 0712-001 Symbol ch_malloc was referenced       from module (), but a runtime definition       of the symbol was not found. rtld: 0712-001 Symbol slap_index2bvlen was referenced       from module (), but a runtime definition       of the symbol was not found. rtld: 0712-001 Symbol lutil_strcopy was referenced       from module (), but a runtime definition       of the symbol was not found. rtld: 0712-001 Symbol slap_index2bv was referenced       from module (), but a runtime definition       of the symbol was not found. rtld: 0712-001 Symbol ber_bvarray_add was referenced       from module (), but a runtime definition       of the symbol was not found.      0509-021 Additional errors o
  Oct 30 22:12:38 slapd[475348]: slapd stopped.

I think the problem is due to the way the AIX linker exports symbols
(not the same as other unices). If I manually export all symbols, then
slapd starts ok (relinking with -bexpall gives
ldap_pvt_thread_pool_purgekey as unresolved). When linking slapd,
libtool doesn't link slapd against the libldap_r.so but libldap_r.a
which probably gives some of the ldap_ errors above. Ditto for
liblber.so.

Note I am using -brtl.

-- 
albert chin (china@thewrittenword.com)