APR on OpenSuSE and symbol lookup errors

Just a week ago I’ve switched a webserver installation from using files for authentication (.htpasswd and such) to polling user accounts from MySQL tables. This has the advantage of re-using existing user administration (such as in forums), implementing finer policies due to SQL commands or using features such as automatic account expiry (SQL: WHERE ... AND expiry IS NULL OR expriy <= UNIX_TIMESTAMP()).
With Apache 1.3 and even 2.0 I’ve used mod_auth_mysql for this, but since Apache httpd 2.2 mod authn_dbd became usable. Unfortunately the version shipped with OpenSuSE 11.1 was linked against an old MySQL version, therefore I’ve had to compile apr and apr-util for libapr-util1-dbd-mysql again.
Obviously there are more like me (see here for other troubleshooting), as this error seems to occur frequently at starting Apache:
/usr/sbin/httpd2-worker: symbol lookup error: /usr/sbin/httpd2-worker: undefined symbol: apr_ldap_ssl_init
For me it helped to compile apr-util with --with-ldap, as OpenSuSE’s Subversion module was compiled with LDAP support and starting Apache yields to the unresolved symbol. That’s behind the mystery.
For your convenience, here are my compile instructions (remember to compile apr, too):
./configure \ --prefix=/usr --sysconfdir=/etc --build=x86_64-pc-linux-gnu \ --cache-file=./config.cache --libdir=/usr/lib64 \ --datadir=/usr/share/apr-util-1 --with-apr=/usr --with-expat=/usr \ --without-berkeley-db --with-ldap --with-mysql --with-sqlite3 \ && make \ && sudo -- make install zypper addlock libapr-util1-dbd-mysql















Follow me on Twitter