httpd-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Rainer Jung <rainer.j...@kippdata.de>
Subject Re: [users@httpd] problems installing mod_ldap when compliing httpd 2.2.22
Date Tue, 21 Aug 2012 18:07:44 GMT
On 21.08.2012 19:45, John Adamski wrote:
> Apache 2.22 on HPUX 11v3 Integrity (Itanium) server
>
> Our ERP is updating which version of apache httpd they use from 2.2.15 to 2.2.22.  We
have a local process that uses mod_ldap & mod_authnz.  The ERP provides a script that
does all the setup and compiling for us.  I'm trying to get httpd to compile on our test/dr
server prior to doing it on our production server.
>
> Last time when we upgraded to 2.2.15 I just had to add these three lines into the script
to get things to compile with the added modules.
>
>   set config_options="${config_options} --enable-ldap=static"
>   set config_options="${config_options} --enable-authnz-ldap=static"
>   set config_options="${config_options} --with-ldap=ldap"
>
>
> when the script runs I get this:
>
> ./apache2_install | & tee install4.Out
> "/home/carsids/adamski/.redo" 1 line, 40 characters
>>>> Directory: /opt/apache2/src/httpd-2.2.22
>>> Command: ./configure --prefix=/opt/apache2 --enable-authn-dbm=shared --with-mpm=prefork
--with-included-apr --without-berkeley-db --enable-expires=shared --enable-headers=shared
--enable-rewrite=shared --enable-mime-magic=shared --enable-info=shared --enable-status=shared
--enable-userdir=shared --enable-http --enable-so --enable-ssl=shared --with-ssl=/opt/openssl101
--with-perl=/opt/perl514 --with-ndbm --with-expat=/opt/gnu --enable-dumpio=shared --enable-ldap=static
--enable-authnz-ldap=static --with-ldap=ldap >& config.out
>>> Command: make >& make.out
> ./apache2_install: Error: See errors in the .out file.
>
> The make.out file has this at the end:
>
> /bin/sh /opt/apache2/src/httpd-2.2.22/srclib/apr/libtool --silent --mode=link cc  +Onoprocelim
+DD32 -Ae +Z -mt  +Onoprocelim +DD32   -Wl,+b -Wl,/opt/apache2
> /lib:/opt/openssl101/lib:/opt/openssl101/lib/hpux32:/opt/gnu/lib:/opt/apache2/src/httpd-2.2.22/srclib/apr/.libs
-L/opt/gnu/lib -release 1 -module -rpath /opt
> /apache2/lib/apr-util-1 -o dbm/apr_dbm_ndbm.la dbm/apr_dbm_ndbm.lo -lc
> /bin/sh /opt/apache2/src/httpd-2.2.22/srclib/apr/libtool --silent --mode=compile cc +Onoprocelim
+DD32 -Ae +Z -mt  +Onoprocelim +DD32 -DHAVE_CONFIG_H -DHPUX1
> 1 -D_REENTRANT -D_HPUX_SOURCE -D_LARGEFILE64_SOURCE   -I/opt/apache2/src/httpd-2.2.22/srclib/apr-util/include
-I/opt/apache2/src/httpd-2.2.22/srclib/apr-util
> /include/private  -I/opt/apache2/src/httpd-2.2.22/srclib/apr/include  -I/opt/gnu/include
 -o ldap/apr_ldap_init.lo -c ldap/apr_ldap_init.c && touch ldap/apr_
> ldap_init.lo
> "ldap/apr_ldap_init.c", line 168: warning #2223-D: function "ldapssl_init" declared implicitly
>        *ldap = ldapssl_init(hostname, portno, 0);
>                ^
>
> "ldap/apr_ldap_init.c", line 168: warning #2513-D: a value of type "int" cannot be assigned
to an entity of type "LDAP *"
>        *ldap = ldapssl_init(hostname, portno, 0);
>              ^
>
> /bin/sh /opt/apache2/src/httpd-2.2.22/srclib/apr/libtool --silent --mode=compile cc +Onoprocelim
+DD32 -Ae +Z -mt  +Onoprocelim +DD32 -DHAVE_CONFIG_H -DHPUX1
> 1 -D_REENTRANT -D_HPUX_SOURCE -D_LARGEFILE64_SOURCE   -I/opt/apache2/src/httpd-2.2.22/srclib/apr-util/include
-I/opt/apache2/src/httpd-2.2.22/srclib/apr-util
> /include/private  -I/opt/apache2/src/httpd-2.2.22/srclib/apr/include  -I/opt/gnu/include
 -o ldap/apr_ldap_option.lo -c ldap/apr_ldap_option.c && touch ldap/
> apr_ldap_option.lo
> "ldap/apr_ldap_option.c", line 446: warning #2223-D: function "ldapssl_enable_clientauth"
declared implicitly
>                result->rc = ldapssl_enable_clientauth(ldap, "",
>                             ^
>
> "ldap/apr_ldap_option.c", line 456: warning #2223-D: function "ldapssl_advclientauth_init"
declared implicitly
>                result->rc = ldapssl_advclientauth_init(cert7db, NULL,
>                             ^
>
> "ldap/apr_ldap_option.c", line 458: error #2020: identifier "LDAPSSL_AUTH_CNCHECK" is
undefined
>                                                        1, secmod, LDAPSSL_AUTH_CNCHECK);
>                                                                   ^
>
> "ldap/apr_ldap_option.c", line 465: warning #2223-D: function "ldapssl_clientauth_init"
declared implicitly
>                result->rc = ldapssl_clientauth_init(cert7db, NULL,
>                             ^
>
> "ldap/apr_ldap_option.c", line 473: warning #2223-D: function "ldapssl_client_init" declared
implicitly
>                result->rc = ldapssl_client_init(cert7db, NULL);
>                             ^
>
> 1 error detected in the compilation of "ldap/apr_ldap_option.c".
> make[3]: *** [ldap/apr_ldap_option.lo] Error 1
> make[3]: Leaving directory `/opt/apache2/src/httpd-2.2.22/srclib/apr-util'
> make[2]: *** [all-recursive] Error 1
> make[2]: Leaving directory `/opt/apache2/src/httpd-2.2.22/srclib/apr-util'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `/opt/apache2/src/httpd-2.2.22/srclib'
> make: *** [all-recursive] Error 1
>
> Since I now get this 2020 error, I assume I don't have some other mod_* that I need to
add to get it to compile.
>
> I have also removed the '=static' and '=ldap' on the lines and get same error.
>
> Does anyone know what is causing this error and how to correct it?

Part of the compilation of the web server is the compilation of the 
budnled APR und APR-UTIL libraries. The code that errs here is part of 
APR-UTIL.

During the configure run of the web server, it calls the configure 
script of APR-UTIL. That in turn detects whether your build system does 
support ldapssl_init() in its system provided ldap lib.

The result is output during the configure run (search for ldapssl_init) 
and also contained in the produced file config.log.

Furthermore the file include/apr_ldap.h generated during configure will 
contain the line

#define APR_HAS_LDAPSSL_INIT 1

if the function could be found. If so, the Apache code will try to use 
it. During compilation it fails, since ldapssl_init is not part of any 
system provided include (.h) file.

In short: your system is in inconsistent state for a build system. The 
libraries contain thefunction ldapssl_init(), but the header files don't 
tell the compiler about its definition. Maybe you need to install an 
additional system provided header file related to ldap? Or you have more 
than one set of ldap libraries installed and the first one found is not 
the one that belongs to the header files? Check the configure output and 
maybe the config.log whether you find any indication of an unwanted ldap 
library. You can also search your system provided header files (e.g. in 
/usr/include ?) for the definition of ldapssl_init().

Regards,

Rainer

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-help@httpd.apache.org


Mime
View raw message