php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #66230 compiled memcache.so for 3.0.8 throws errors
Submitted: 2013-12-03 22:46 UTC Modified: 2021-03-25 16:36 UTC
Votes:7
Avg. Score:3.9 ± 1.5
Reproduced:7 of 7 (100.0%)
Same Version:2 (28.6%)
Same OS:2 (28.6%)
From: bcs at majk dot net Assigned: cmb (profile)
Status: Closed Package: memcache (PECL)
PHP Version: 5.4.22 OS: OSX 10.9
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: bcs at majk dot net
New email:
PHP Version: OS:

 

 [2013-12-03 22:46 UTC] bcs at majk dot net
Description:
------------
[Tue Dec 03 17:41:46 2013] [notice] child pid 47529 exit signal Trace/BPT trap (5)
dyld: lazy symbol binding failed: Symbol not found: _mmc_queue_remove
  Referenced from: /Applications/MAMP/bin/php/php5.4.19/lib/php/extensions/no-debug-non-zts-20100525/memcache.so
  Expected in: flat namespace

dyld: Symbol not found: _mmc_queue_remove
  Referenced from: /Applications/MAMP/bin/php/php5.4.19/lib/php/extensions/no-debug-non-zts-20100525/memcache.so
  Expected in: flat namespace


Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2015-11-05 19:52 UTC] dschnabel at appneta dot com
We ran into the same problem on Ubuntu Wily (15.10). PHP reports:
php: symbol lookup error: /usr/local/lib/php/extensions/no-debug-non-zts-20090626/memcache.so: undefined symbol: mmc_queue_pop

While memcache compiles I'm seeing a bunch of errors like this:
/tmp/pear/temp/memcache/memcache_pool.h:395:12: warning: inline function ‘mmc_prepare_key’ declared but never defined
 inline int mmc_prepare_key(zval *, char *, unsigned int *);

/tmp/pear/temp/memcache/memcache_pool.h:394:12: warning: inline function ‘mmc_prepare_key_ex’ declared but never defined
 inline int mmc_prepare_key_ex(const char *, unsigned int, char *, unsigned int *);

After applying this patch (https://build.opensuse.org/package/view_file?expand=1&file=memcache-faulty-inline.diff&package=php5-pecl-memcache&project=home%3Agerritbeine%3Aforwards&rev=003162ef3cab7469fdcdf1430fd123a1) the problem goes away.

Ubuntu Wily uses GCC 5 and it seems that the semantics for inline functions have changed: https://gcc.gnu.org/gcc-5/porting_to.html (see section "Different semantics for inline functions")
 [2016-10-07 19:11 UTC] daniel at ifixit dot com
Workaround:

You can alternatively install the extension and pass a new CFLAGS option to tell gcc to use the old method of inlining functions:

CFLAGS="-fgnu89-inline" pecl install memcache-3.0.7
 [2021-03-25 16:36 UTC] cmb@php.net
-Status: Open +Status: Closed -Assigned To: +Assigned To: cmb
 [2021-03-25 16:36 UTC] cmb@php.net
The official bug tracker for PECL/memcache is now at
<https://github.com/websupport-sk/pecl-memcache/issues>.

So, if this is still an issue with either of the current memcache
versions (4 or 8), please file an issue there.
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Sat Nov 23 23:01:26 2024 UTC