Hi,
I am trying to install PHP 4.1.2as a shared module with  with Apache 
1.3.22, and OpenLDAP 2.0.23.

When I try to start Apache, I get the following error:

apachectl sslstart
Syntax error on line 239 of /usr/local/apache/conf/httpd.conf:
Cannot load /usr/local/apache/libexec/libphp4.so into server: undefined 
symbol: ldap_value_free
/usr/bin/apachectl sslstart: httpd could not be started

I have seen this problem appear many times in this forum, and others,
but so far, none of the remedies suggested have worked on my system(SuSE 
7.1).

My php configure is as follows:

./configure
--with-apxs=/usr/local/apache/bin/apxs
--with-config-file-path=/usr/local/apache/conf
--enable-versioning
--with-mysql
--enable-ftp
--with-gd=/usr/local/gd-1.8.4
--enable-bcmath
--disable-debug
--enable-memory-limit
--with-ldap=/usr/local/src/openldap-2.0.23
--with-sablot=/usr/src/Sablot-0.44

Configure, make clean, make, and make install all work without error.

LDAP(by the way, I tried 4 different versions), installs, and passes all
tests, and I can access it from another machine.

Following some of the suggestions in the mailing lists, I checked the 
ld.cache, with ldconfig --verbose, and the appropriate lines in the 
output were
/usr/local/lib:
         liblber.so.2 -> liblber.so.2.0.15
         libldap.so.2 -> libldap.so.2.0.15
         libldap_r.so.2 -> libldap_r.so.2.0.15
. . .
This seems to indicate that the LDAP libraries are loaded in the cache.

I then checked the built libphp4.so, with ldd, and got the following

ldd /usr/local/apache/libexec/libphp4.so
         libdl.so.2 => /lib/libdl.so.2 (0x40175000)
         libttf.so.2 => /usr/lib/libttf.so.2 (0x40178000)
         libjpeg.so.62 => /usr/lib/libjpeg.so.62 (0x401a0000)
         libpng.so.2 => /usr/lib/libpng.so.2 (0x401bf000)
         libz.so.1 => /lib/libz.so.1 (0x401ea000)
         libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x401f9000)
         libXpm.so.4 => /usr/X11R6/lib/libXpm.so.4 (0x402dc000)
         libcrypt.so.1 => /lib/libcrypt.so.1 (0x402ec000)
         libresolv.so.2 => /lib/libresolv.so.2 (0x4031a000)
         libpam.so.0 => /lib/libpam.so.0 (0x4032b000)
         libgd.so.4 => /usr/lib/libgd.so.4 (0x40333000)
         libm.so.6 => /lib/libm.so.6 (0x40364000)
         libnsl.so.1 => /lib/libnsl.so.1 (0x40382000)
         libc.so.6 => /lib/libc.so.6 (0x40398000)
         /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x2aaaa000)

If I have correctly understood(which may not be the case), the linux 
loader, I think I should have expected to see somewhere a reference in 
libphp4.so to the ldap libraries, as I think that they should be loaded
when libphp4.so is loaded.  If they are not loaded during 
initialisation, they could perhaps be loaded at first call, but if they 
are, I am a little out of my depth here.

So it would seem to me that the the PHP configure/make/make install 
cycle is not correctly building libphp4.so.  This could be a problem 
with the configure, or with my machine setup.  I can think of two ways 
to solve the problem, - fix the configurations script, or manually add 
something to the make file, to force the loading of the libraries, but I 
have to say that I think this might be a little beyond me at the moment.
Any suggestions would be gratefully appreciated.  Sorry for the long append.

Best regards. . . Fred


-- 
PHP Install Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to