php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #56452 APC does not work if PHP is compiled with with --enable-versioning
Submitted: 2005-07-13 05:35 UTC Modified: 2009-12-22 22:09 UTC
Votes:1
Avg. Score:5.0 ± 0.0
Reproduced:1 of 1 (100.0%)
Same Version:0 (0.0%)
Same OS:0 (0.0%)
From: akorthaus at web dot de Assigned:
Status: Wont fix Package: APC (PECL)
PHP Version: 5_1 CVS-2005-07-13 (dev) OS: Linux 2.4.31 (gentoo)
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: akorthaus at web dot de
New email:
PHP Version: OS:

 

 [2005-07-13 05:35 UTC] akorthaus at web dot de
Description:
------------
If PHP is compiled with --enable-versioning, the following php startup error is logged to php error-log if APC 3.0.3 is enabled:

PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/extensions/no-debug-non-zts-20050617/apc.so' - 
/usr/lib/php/extensions/no-debug-non-zts-20050617/apc.so: undefined symbol: OnUpdateLong in Unknown on line 0

php compiled with --enable-versioning:

% nm -o /usr/lib/apache/libphp5.so | grep OnUpdateLong
/usr/lib/apache/libphp5.so:001b2bf0 t OnUpdateLong

php compiled without --enable-versioning:

% nm -o /usr/lib/apache/libphp5.so | grep OnUpdateLong
/usr/lib/apache/libphp5.so:001f2780 T OnUpdateLong

I'm not sure if this is expected behaviour, it took me many hours to track this down. --enable-versioning is used in  Gentoo PHP-ebuilds, and it worked with older releases of APC. 

If this is expected behaviour and will not change in future releases, please let me know.

related thread from pecl-dev: http://marc.theaimsgroup.com/?l=pecl-dev&m=112086174616360&w=2


Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2005-07-13 09:22 UTC] rasmus@php.net
This won't be fixed.  --enable-versioning will probably just go away.  Gentoo shouldn't be using it.
 [2009-12-22 21:52 UTC] exeagle2003 at gmail dot com
You PHP guys need to do a better job than this!

I am trying to get apache started with libphp5.so in modules/ directory and it keeps complaining about OnUpdateLong.

Doing 

nm libphp5.so | grep OnUpdateLong

I am finding that it outputs

U OnUpdateLong

which means this symbol is undefined. Why the heck does apache complain then?

For someone trying to learn PHP this one reason is good enough to quit. I already spent close to 5 hours trying to fix this problem, which I could have spent learning PHP.

You guys want to compete with JAVA, then start doing a better job.
 [2009-12-22 22:09 UTC] rasmus@php.net
If you just want stuff to work, why in the world are you 
running Gentoo?  Most Linux distros have perfectly working 
packages of php and php_apc.  Use one of those.  If you are a 
fiddler, run Gentoo, but don't whine about it.
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Sun Oct 27 16:01:27 2024 UTC