php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #62679 pgnet.dev+phpbugs@gmail.com
Submitted: 2012-07-27 22:55 UTC Modified: 2012-08-07 05:04 UTC
Votes:10
Avg. Score:5.0 ± 0.0
Reproduced:10 of 10 (100.0%)
Same Version:9 (90.0%)
Same OS:9 (90.0%)
From: pgnet dot dev+phpbugs at gmail dot com Assigned: andrei (profile)
Status: Closed Package: memcached (PECL)
PHP Version: 5.4.5 (branch/5.4) OS: any
Private report: No CVE-ID: None
 [2012-07-27 22:55 UTC] pgnet dot dev+phpbugs at gmail dot com
Description:
------------
Just getting this into the bug system ...

	On Tue, Jul 24, 2012 at 10:17 AM, Andrei Zmievski <an...> wrote:
	> So they broke something again.
	> 
	> I'll try to fix this soon.
	> 
	> -Andrei

It appears this issue

      Bug #59243    Memcached compile error
      https://bugs.php.net/bug.php?id=59243

may have returned, with

    php -v
            PHP 5.4.5-dev (cli) (built: Jul 24 2012 00:02:14)
            Copyright (c) 1997-2012 The PHP Group
            Zend Engine v2.4.0, Copyright (c) 1998-2012 Zend Technologies

    cd /usr/local/src/libmemcached-BZR
     bzr pull
     bzr log | head -n 10
            ------------------------------------------------------------
            revno: 1053 [merge]
            committer: Brian Aker <brian@tangent.org>
            branch nick: libmemcached
            timestamp: Sun 2012-07-15 00:52:17 -0700
            message:
              Merge of cppcheck, assert fix.
            ------------------------------------------------------------
            revno: 1052 [merge]
            committer: Brian Aker <brian@tangent.org>

    cd /usr/local/src/php-memcached
    git log | head -n 10
            commit 9f86643ac30a578201d7d76b0af8fe5b480c8e91
            Author: Andrei Zmievski <andrei@zmievski.org>
            Date:   Wed May 2 20:47:00 2012 -0700

    make clean
            find . -name \*.gcno -o -name \*.gcda | xargs rm -f
            find . -name \*.lo -o -name \*.o | xargs rm -f
            find . -name \*.la -o -name \*.a | xargs rm -f
            find . -name \*.so | xargs rm -f
            find . -name .libs -a -type d|xargs rm -rf
            rm -f libphp.la   modules/* libs/*


    phpize
    ./configure  --enable-memcached  --enable-memcached-json
    --enable-memcached-igbinary  --with-libmemcached-dir=/usr/local
    --with-php-config=/usr/local/php5/bin/php-config
            configure: loading site script /usr/share/site/x86_64-unknown-linux-gnu
            checking for grep that handles long lines and -e... /bin/grep
            checking for egrep... /bin/grep -E
            checking for a sed that does not truncate output... /bin/sed
            checking whether the C compiler works... yes
            checking for C compiler default output file name... a.out
            checking for suffix of executables...
            checking whether we are cross compiling... no
            checking for suffix of object files... o
            checking whether we are using the GNU C compiler... yes
            checking whether /usr/bin/gcc-4.7 accepts -g... yes
            checking for /usr/bin/gcc-4.7 option to accept ISO C89... none needed
            checking how to run the C preprocessor... /usr/bin/gcc-4.7 -E
            checking for icc... no
            checking for suncc... no
            checking whether /usr/bin/gcc-4.7 and cc understand -c and -o together... yes
            checking for system library directory... lib
            checking if compiler supports -R... no
            checking if compiler supports -Wl,-rpath,... yes
            checking build system type... x86_64-unknown-linux-gnu
            checking host system type... x86_64-unknown-linux-gnu
            checking target system type... x86_64-unknown-linux-gnu
            checking for PHP prefix... /usr/local/php5
            checking for PHP includes... -I/usr/local/php5/include/php
    -I/usr/local/php5/include/php/main -I/usr/local/php5/include/php/TSRM
    -I/usr/local/php5/include/php/Zend -I/usr/local/php5/include/php/ext
    -I/usr/local/php5/include/php/ext/date/lib
            checking for PHP extension directory... /usr/local/php5ext
            checking for PHP installed headers prefix... /usr/local/php5/include/php
            checking if debug is enabled... no
            checking if zts is enabled... no
            checking for re2c... re2c
            checking for re2c version... 0.13.5 (ok)
            checking for gawk... gawk
            checking whether to enable memcached support... yes, shared
            checking for libmemcached... yes, shared
            checking whether to enable memcached session handler support... yes
            checking whether to enable memcached igbinary serializer support... yes
            checking whether to enable memcached json serializer support... yes
            checking whether to disable memcached sasl support... no
            checking for ZLIB... yes, shared
            checking for zlib location... /usr
            checking for session includes... /usr/local/php5/include/php
            checking for json includes... /usr/local/php5/include/php
            checking for igbinary includes... /usr/local/php5/include/php
            checking for memcached session support... enabled
            checking for memcached igbinary support... enabled
            checking for libmemcached location... /usr/local
            checking for ld used by /usr/bin/gcc-4.7... /usr/bin/ld
            checking if the linker (/usr/bin/ld) is GNU ld... yes
            checking for /usr/bin/ld option to reload object files... -r
            checking for BSD-compatible nm... /usr/bin/nm -B
            checking whether ln -s works... yes
            checking how to recognize dependent libraries... pass_all
            checking dlfcn.h usability... yes
            checking dlfcn.h presence... yes
            checking for dlfcn.h... yes
            checking the maximum length of command line arguments... 1572864
            checking command to parse /usr/bin/nm -B output from /usr/bin/gcc-4.7
    object... ok
            checking for objdir... .libs
            checking for ar... ar
            checking for ranlib... ranlib
            checking for strip... strip
            checking if /usr/bin/gcc-4.7 supports -fno-rtti -fno-exceptions... no
            checking for /usr/bin/gcc-4.7 option to produce PIC... -fPIC
            checking if /usr/bin/gcc-4.7 PIC flag -fPIC works... yes
            checking if /usr/bin/gcc-4.7 static flag -static works... no
            checking if /usr/bin/gcc-4.7 supports -c -o file.o... yes
            checking whether the /usr/bin/gcc-4.7 linker (/usr/bin/ld -m
    elf_x86_64) supports shared libraries... yes
            checking whether -lc should be explicitly linked in... no
            checking dynamic linker characteristics... GNU/Linux ld.so
            checking how to hardcode library paths into programs... immediate
            checking whether stripping libraries is possible... yes
            checking if libtool supports shared libraries... yes
            checking whether to build shared libraries... yes
            checking whether to build static libraries... no

            creating libtool
            appending configuration tag "CXX" to libtool
            checking whether the /usr/bin/g++-4.7 linker (/usr/bin/ld -m
    elf_x86_64) supports shared libraries... yes
            checking for /usr/bin/g++-4.7 option to produce PIC...
            checking if /usr/bin/g++-4.7 static flag  works... yes
            checking if /usr/bin/g++-4.7 supports -c -o file.o... yes
            checking whether the /usr/bin/g++-4.7 linker (/usr/bin/ld -m
    elf_x86_64) supports shared libraries... yes
            checking dynamic linker characteristics... GNU/Linux ld.so
            (cached) (cached) checking how to hardcode library paths into
    programs... unsupported
            configure: creating ./config.status
            config.status: creating config.h
            config.status: config.h is unchanged

    make
            /bin/sh /usr/local/src/php-memcached/libtool --mode=compile
    /usr/bin/gcc-4.7 -I/usr/local/php5/include/php
    -I/usr/local/php5/include/php -I. -I/usr/local/src/php-memcached
    -DPHP_ATOM_INC -I/usr/local/src/php-memcached/include
    -I/usr/local/src/php-memcached/main -I/usr/local/src/php-memcached
    -I/usr/local/php5/include/php -I/usr/local/php5/include/php/main
    -I/usr/local/php5/include/php/TSRM -I/usr/local/php5/include/php/Zend
    -I/usr/local/php5/include/php/ext
    -I/usr/local/php5/include/php/ext/date/lib -I/usr/local/include
    -DHAVE_CONFIG_H  -O3 -march=corei7 -mtune=corei7   -c
    /usr/local/src/php-memcached/php_memcached.c -o php_memcached.lo
            mkdir .libs
             /usr/bin/gcc-4.7 -I/usr/local/php5/include/php
    -I/usr/local/php5/include/php -I. -I/usr/local/src/php-memcached
    -DPHP_ATOM_INC -I/usr/local/src/php-memcached/include
    -I/usr/local/src/php-memcached/main -I/usr/local/src/php-memcached
    -I/usr/local/php5/include/php -I/usr/local/php5/include/php/main
    -I/usr/local/php5/include/php/TSRM -I/usr/local/php5/include/php/Zend
    -I/usr/local/php5/include/php/ext
    -I/usr/local/php5/include/php/ext/date/lib -I/usr/local/include
    -DHAVE_CONFIG_H -O3 -march=corei7 -mtune=corei7 -c
    /usr/local/src/php-memcached/php_memcached.c  -fPIC -DPIC -o
    .libs/php_memcached.o
            /usr/local/src/php-memcached/php_memcached.c: In function ‘php_memc_get_impl’:
            /usr/local/src/php-memcached/php_memcached.c:601:15: warning:
    assignment discards ‘const’ qualifier from pointer target type
    [enabled by default]
            /usr/local/src/php-memcached/php_memcached.c: In function
    ‘php_memc_getMulti_impl’:
            /usr/local/src/php-memcached/php_memcached.c:799:15: warning:
    assignment discards ‘const’ qualifier from pointer target type
    [enabled by default]
            /usr/local/src/php-memcached/php_memcached.c:802:15: warning:
    assignment discards ‘const’ qualifier from pointer target type
    [enabled by default]
            /usr/local/src/php-memcached/php_memcached.c: In function
    ‘zim_Memcached_fetch’:
            /usr/local/src/php-memcached/php_memcached.c:1016:14: warning:
    assignment discards ‘const’ qualifier from pointer target type
    [enabled by default]
            /usr/local/src/php-memcached/php_memcached.c:1019:14: warning:
    assignment discards ‘const’ qualifier from pointer target type
    [enabled by default]
            /usr/local/src/php-memcached/php_memcached.c: In function
    ‘zim_Memcached_fetchAll’:
            /usr/local/src/php-memcached/php_memcached.c:1070:15: warning:
    assignment discards ‘const’ qualifier from pointer target type
    [enabled by default]
            /usr/local/src/php-memcached/php_memcached.c:1073:15: warning:
    assignment discards ‘const’ qualifier from pointer target type
    [enabled by default]
            /usr/local/src/php-memcached/php_memcached.c: In function
    ‘zim_Memcached_getServerByKey’:
            /usr/local/src/php-memcached/php_memcached.c:1979:9: warning:
    assignment discards ‘const’ qualifier from pointer target type
    [enabled by default]
            /usr/local/src/php-memcached/php_memcached.c: In function
    ‘php_memc_do_serverlist_callback’:
            /usr/local/src/php-memcached/php_memcached.c:2585:2: warning:
    dereferencing ‘void *’ pointer [enabled by default]
            /usr/local/src/php-memcached/php_memcached.c:2585:2: error: request
    for member ‘hostname’ in something not a structure or union
            /usr/local/src/php-memcached/php_memcached.c:2586:2: warning:
    dereferencing ‘void *’ pointer [enabled by default]
            /usr/local/src/php-memcached/php_memcached.c:2586:2: error: request
    for member ‘port’ in something not a structure or union
            /usr/local/src/php-memcached/php_memcached.c:2587:2: warning:
    dereferencing ‘void *’ pointer [enabled by default]
            /usr/local/src/php-memcached/php_memcached.c:2587:2: error: request
    for member ‘weight’ in something not a structure or union
            /usr/local/src/php-memcached/php_memcached.c: In function
    ‘php_memc_do_stats_callback’:
            /usr/local/src/php-memcached/php_memcached.c:2598:57: warning:
    dereferencing ‘void *’ pointer [enabled by default]
            /usr/local/src/php-memcached/php_memcached.c:2598:57: error: request
    for member ‘hostname’ in something not a structure or union
            /usr/local/src/php-memcached/php_memcached.c:2598:77: warning:
    dereferencing ‘void *’ pointer [enabled by default]
            /usr/local/src/php-memcached/php_memcached.c:2598:77: error: request
    for member ‘port’ in something not a structure or union
            /usr/local/src/php-memcached/php_memcached.c: In function
    ‘php_memc_do_version_callback’:
            /usr/local/src/php-memcached/php_memcached.c:2643:57: warning:
    dereferencing ‘void *’ pointer [enabled by default]
            /usr/local/src/php-memcached/php_memcached.c:2643:57: error: request
    for member ‘hostname’ in something not a structure or union
            /usr/local/src/php-memcached/php_memcached.c:2643:77: warning:
    dereferencing ‘void *’ pointer [enabled by default]
            /usr/local/src/php-memcached/php_memcached.c:2643:77: error: request
    for member ‘port’ in something not a structure or union
            /usr/local/src/php-memcached/php_memcached.c:2645:13: warning:
    dereferencing ‘void *’ pointer [enabled by default]
            /usr/local/src/php-memcached/php_memcached.c:2645:13: error: request
    for member ‘major_version’ in something not a structure or union
            /usr/local/src/php-memcached/php_memcached.c:2645:38: warning:
    dereferencing ‘void *’ pointer [enabled by default]
            /usr/local/src/php-memcached/php_memcached.c:2645:38: error: request
    for member ‘minor_version’ in something not a structure or union
            /usr/local/src/php-memcached/php_memcached.c:2646:13: warning:
    dereferencing ‘void *’ pointer [enabled by default]
            /usr/local/src/php-memcached/php_memcached.c:2646:13: error: request
    for member ‘micro_version’ in something not a structure or union
            /usr/local/src/php-memcached/php_memcached.c: In function
    ‘php_memc_do_result_callback’:
            /usr/local/src/php-memcached/php_memcached.c:3189:14: warning:
    assignment discards ‘const’ qualifier from pointer target type
    [enabled by default]
            /usr/local/src/php-memcached/php_memcached.c:3192:14: warning:
    assignment discards ‘const’ qualifier from pointer target type
    [enabled by default]
            make: *** [php_memcached.lo] Error 1



Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2012-07-31 17:46 UTC] pgnet dot dev+phpbugs at gmail dot com
upgraded to latest pulls of:

origin/PHP-5.4
libmemcached r1057

also switch to memcached 1.4.14 (just fyi)

no changes in behavior -- still broken as reported.
 [2012-07-31 18:46 UTC] pgnet dot dev+phpbugs at gmail dot com
reproducible on multiple arch & distro
changing OS -> any
 [2012-07-31 18:46 UTC] pgnet dot dev+phpbugs at gmail dot com
-Summary: Memcached compile error +Summary: pgnet.dev+phpbugs@gmail.com -Operating System: linux/64 +Operating System: any -PHP Version: 5.4.5 +PHP Version: 5.4.5 (branch/5.4)
 [2012-08-02 09:38 UTC] bgozzo at hotmail dot com
I had this bug too and resolve it: you need to install libmemcached-0.48 (I could 
not compile with libs libmemcached-1.0.10 or libmemcached-0.39).
 [2012-08-02 14:47 UTC] pgnet dot dev+phpbugs at gmail dot com
I'd rolled back libmemcached versions in testing -- but not that far.

I can confirm that using 0.48 release tarball re-enables the successful build of php-memcached.
 [2012-08-06 03:30 UTC] admin at yqed dot com
I experience the same compile error, in both CentOS 5.8/6.3 64 bits, PHP 5.3.15 and libmemcached 1.0.10. Hopefully, Andrei will release soon a patch for pecl-memcached.
 [2012-08-07 05:04 UTC] andrei@php.net
-Status: Open +Status: Closed -Assigned To: +Assigned To: andrei
 [2012-08-07 05:04 UTC] andrei@php.net
Thank you for your bug report. This issue has already been fixed
in the latest released version of PHP, which you can download at 
http://www.php.net/downloads.php

Fixed in the 2.1.0 release.
 [2012-08-07 08:01 UTC] admin at yqed dot com
Thank you for the quick fix, Andrei. The new php-pecl-memcached rpm's for Redhat 
5/6 64bits are available into my repo:
http://rpm.axivo.com/

I have them already installed on 3 websites, everything is running smooth.
There is a minor set of warnings occurring on both CentOS 5 and 6, at compile 
time:
http://pastie.org/pastes/4404507/text?key=ksc1yfqihv0s1hnaahf5qw

Looking forward to meet you again at Confoo conference in Montreal.
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Thu Dec 26 11:01:30 2024 UTC