php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #19142 cannot load libphp4.so: undefined symbol: core_globals
Submitted: 2002-08-28 06:17 UTC Modified: 2002-09-05 02:41 UTC
From: red at tripany dot com Assigned:
Status: Closed Package: Apache related
PHP Version: 4.2.2 OS: Debian 2.2
Private report: No CVE-ID: None
Welcome back! If you're the original bug submitter, here's where you can edit the bug or add additional notes.
If you forgot your password, you can retrieve your password here.
Password:
Status:
Package:
Bug Type:
Summary:
From: red at tripany dot com
New email:
PHP Version: OS:

 

 [2002-08-28 06:17 UTC] red at tripany dot com
Apache 1.3.26 is compiled and made as such:

./configure --prefix=/opt/httpd-1.3.26 --enable-module=expires --enable-module=so --enable-module=auth_digest --enable-module=info --enable-module=log_referer --enable-module=rewrite --enable-module=vhost_alias

no errors during compile

Php is compiled and made as such:

./configure --prefix=/opt/php-4.2.2 --with-apxs=/opt/httpd-1.3.26/bin/apxs --with-libdir=/usr/lib --with-gd --with-gettext --enable-safe-mofe --with-config-file-path=/opt/httpd/conf --with-exec-dir=/usr/bin --with-tiff-dir=/usr/lib --with-jpeg-dir=/usr/lib --with-png-dir=/usr/lib --with-zlib-dir=/usr/lib --enable-magic-quotes --with-regex=system --with-db --with-gdbm --enable-mbstring --enable-mbstr-enc-trans --enable-track-vars --enable-wddx=shared --enable-mm=shared --enable-xml --enable-ftp --enable-debug --with-ldap --with-mysql

no errors

doing a
/opt/httpd-1.3.26/bin/apachectl configtest
gives
Syntax error on line 235 of /opt/httpd-1.3.26/conf/httpd.conf:
Cannot load /opt/httpd-1.3.26/libexec/libphp4.so into server: /opt/httpd-1.3.26/libexec/libphp4.so: undefined symbol: core_globals

and line 235 of httpd.conf is

LoadModule php4_module        libexec/libphp4.so

Cheers
Robin

Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2002-08-28 12:37 UTC] kalowsky@php.net
does this happen when just defining --with-apxs in the configure script?
 [2002-08-28 13:06 UTC] sniper@php.net
1. You use wrong paths (/usr/lib won't work for e.g. --with-zlib-di)
2. --enable-wddx=shared won't work (should be fixed in CVS though)
3. --enable-mm=shared won't work (should be fixed in CVS)
4. Using --with-regex=system will cause some problems with some functions. Just leave that out.

So fix the paths, remove those '=shared' from above mentioned options and it will work.

 [2002-08-28 13:07 UTC] sniper@php.net
Nevermind the --enable-wddx=shared part..it should work.

 [2002-08-30 08:32 UTC] red at tripany dot com
My new configure line is:

./configure --prefix=/opt/php-4.2.2 --with-apxs=/opt/httpd-1.3.26/bin/apxs --with-gd --with-gettext --enable-safe-mofe --with-config-file-path=/opt/httpd/conf --with-exec-dir=/usr/bin --with-tiff-dir=/usr/lib --with-jpeg-dir=/usr/lib --with-png-dir=/usr/lib --with-zlib --enable-magic-quotes --with-db --with-gdbm --enable-mbstring --enable-mbstr-enc-trans --enable-track-vars --enable-wddx=shared --enable-mm --enable-xml --enable-ftp --enable-debug --with-ldap --with-mysql

And it's still giving the same error.
Unfortunately, I can't do without the location of apxs, because it then gives me:
configure: error: Use --with-apxs2 with Apache 2.x!

As I'm running Apache 2.0.40 in /opt/httpd-2.0.40/ (which I guess it's finding first). I don't really want apache to go down before I know this version is working...

Finally, if I /do/ get rid of the shared statement from wddx=shared, it gives me a new error:

Cannot load /opt/httpd-1.3.26/libexec/libphp4.so into server: /opt/httpd-1.3.26/libexec/libphp4.so: undefined symbol: ps_globals

Still no errors at any stage during compile

Cheers
R
 [2002-08-30 10:15 UTC] sniper@php.net
You're really doing something wrong. This works just fine
for me and couple of hundred other people out there.. :)

Try with _clean_ sources. And with the proposed CORRECT paths..you still used /usr/lib where it should be /usr..

 [2002-09-04 19:14 UTC] cmwade1 at attbi dot com
I have a simpler case:

Compiling on Red Hat 7.2...
Apache 1.3.26 is compiled like:

./configure --prefix=/usr/local/apache \
--enable-module=rewrite --enable-shared=rewrite \
--enable-module=proxy --enable-shared=proxy

no errors, apache compiles and runs fine like this.

php is compiled with:

./configure --with-mysql \
--with-apxs=/usr/local/apache/bin/apxs

no errors during configure, make or install.

However, when I go to start apache again, I get:

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

line 207 is, of course:
LoadModule php4_module        libexec/libphp4.so
 [2002-09-05 02:41 UTC] red at tripany dot com
I found I had a /usr/sbin/apxs from an earlier (debian) install, and I also had /opt/httpd-2.0.40/bin/apxs. So if I installed using --with-apxs=/opt/httpd-1.3.26/bin/apxs it wouldn't work, and just using --with-apxs, it would find one of the other apxs files first. So I had to delete the /opt/httpd-2.0.40 dir AND the /usr/sbin/apxs, then ln -s /usr/sbin/apxs /opt/httpd-2.0.40/bin/apxs, so I could install using just the --with-apxs switch. 
THEN it worked!
Cheers Kalowsky :)
Grtz
Robin
 
PHP Copyright © 2001-2025 The PHP Group
All rights reserved.
Last updated: Fri Mar 14 15:01:30 2025 UTC