>Number: 3823 >Category: config >Synopsis: enabling a module as shared does not cause it to link against >the necessary extra libraries >Confidential: no >Severity: serious >Priority: medium >Responsible: apache >State: open >Class: sw-bug >Submitter-Id: apache >Arrival-Date: Wed Feb 3 09:50:00 PST 1999 >Last-Modified: >Originator: [EMAIL PROTECTED] >Organization: apache >Release: 1.3.4 >Environment: BSD/OS kci.kciLink.com 4.0 BSDI BSD/OS 4.0 Kernel #0: Fri Jan 22 12:17:00 EST 1999 [EMAIL PROTECTED]:/u/sources/sys/compile/KCI i386 >Description: Given a module with a configuration like this, APACI configuration finds that it does need to link the additional libraries:
* MODULE-DEFINITION-START * Name: mysql_auth_module * ConfigStart MYSQL_LIB="-L/usr/local/lib/mysql -lmysqlclient -lm" if [ "X$MYSQL_LIB" != "X" ]; then LIBS="$LIBS $MYSQL_LIB" echo " + using $MYSQL_LIB for MySQL support" fi * ConfigEnd * MODULE-DEFINITION-END This works fine when this module is compiled statically. However, if you make this module --enable-shared during the config, then the resulting .so file does not have the additional libraries linked, but those libraries are referenced for linking when building httpd. I believe that the libraries found to be linked for specific modules this way should be used when building the .so file, not when linking httpd if that module is marked to be shared. >How-To-Repeat: Configure apache with a dynamic module that needs extra libraries as specified above. >Fix: Don't configure such modules during the initial build, but afterwards, using apxs. >Audit-Trail: >Unformatted: [In order for any reply to be added to the PR database, ] [you need to include <[EMAIL PROTECTED]> in the Cc line ] [and leave the subject line UNCHANGED. This is not done] [automatically because of the potential for mail loops. ] [If you do not include this Cc, your reply may be ig- ] [nored unless you are responding to an explicit request ] [from a developer. ] [Reply only with text; DO NOT SEND ATTACHMENTS! ]