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
View Developer Edit
Welcome! If you don't have a Git account, you can't do anything here.
If you reported this bug, you can edit this bug over here.
Block user comment
Status: Assign to:
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: Fri Oct 11 06:01:27 2024 UTC