osx - Upgrading APC extension in MAMP

06
2014-04
  • benatespina

    I'm trying to upgrade the APC extension in MAMP. I have got installed MacPorts and with the following command I've installed the autoconf:

    sudo port install autoconf

    Then I've executed this command:

    /Applications/MAMP/bin/php/php5.4.10/bin/pecl upgrade apc

    and this is what appears on console:

    downloading APC-3.1.13.tgz ...
    Starting to download APC-3.1.13.tgz (171,591 bytes)
    .....................................done: 171,591 bytes
    55 source files, building
    WARNING: php_bin /Applications/MAMP/bin/php/php5.4.10/bin/php appears to have a suffix /php5.4.10/bin/php, but config variable php_suffix does not match
    running: phpize
    grep: /Applications/MAMP/bin/php/php5.4.10/include/php/main/php.h: No such file or directory
    grep: /Applications/MAMP/bin/php/php5.4.10/include/php/Zend/zend_modules.h: No such file or directory
    grep: /Applications/MAMP/bin/php/php5.4.10/include/php/Zend/zend_extensions.h: No such file or directory
    Configuring for:
    PHP Api Version:
    Zend Module Api No:
    Zend Extension Api No:
    Enable internal debugging in APC [no] : 
    Enable per request file info about files used from the APC cache [no] : 
    Enable spin locks (EXPERIMENTAL) [no] : 
    Enable memory protection (EXPERIMENTAL) [no] : 
    Enable pthread mutexes (default) [no] : 
    Enable pthread read/write locks (EXPERIMENTAL) [yes] : 
    building in /private/tmp/pear/temp/pear-build-benatespinagk8kAT/APC-3.1.13
    running: /private/tmp/pear/temp/APC/configure --enable-apc-debug=no --enable-apc-filehits=no --enable-apc-spinlocks=no --enable-apc-memprotect=no --enable-apc-pthreadmutex=no --enable-apc-pthreadrwlocks=yes
    checking for grep that handles long lines and -e... /usr/bin/grep
    checking for egrep... /usr/bin/grep -E
    checking for a sed that does not truncate output... /opt/local/bin/gsed
    checking for cc... cc
    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 cc accepts -g... yes
    checking for cc option to accept ISO C89... none needed
    checking how to run the C preprocessor... cc -E
    checking for icc... no
    checking for suncc... no
    checking whether cc understands -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... i386-apple-darwin12.4.0
    checking host system type... i386-apple-darwin12.4.0
    checking target system type... i386-apple-darwin12.4.0
    checking for PHP prefix... /Applications/MAMP/bin/php/php5.4.10
    checking for PHP includes... -I/Applications/MAMP/bin/php/php5.4.10/include/php -I/Applications/MAMP/bin/php/php5.4.10/include/php/main -I/Applications/MAMP/bin/php/php5.4.10/include/php/TSRM -I/Applications/MAMP/bin/php/php5.4.10/include/php/Zend -I/Applications/MAMP/bin/php/php5.4.10/include/php/ext -I/Applications/MAMP/bin/php/php5.4.10/include/php/ext/date/lib
    checking for PHP extension directory... /Applications/MAMP/bin/php/php5.4.10/lib/php/extensions/no-debug-non-zts-20100525
    checking for PHP installed headers prefix... /Applications/MAMP/bin/php/php5.4.10/include/php
    checking if debug is enabled... no
    checking if zts is enabled... no
    checking for re2c... no
    configure: WARNING: You will need re2c 0.13.4 or later if you want to regenerate PHP parsers.
    checking for gawk... no
    checking for nawk... no
    checking for awk... awk
    checking if awk is broken... no
    checking whether to enable APC support... yes, shared
    checking whether we should enable cache request file info... no
    checking whether we should use mmap... yes
    checking whether we should use semaphore locking instead of fcntl... no
    checking whether we should use pthread mutex locking... no
    checking whether we should use pthread read/write locking... yes
    pthread rwlocks are supported!
    checking whether the target compiler supports builtin atomics... yes
    checking whether we should use spin locks... no
    checking whether we should enable memory protection... no
    checking for zend_set_lookup_function_hook... no
    checking for sigaction... yes
    checking for union semun... yes
    checking whether we should enable valgrind support... checking for ANSI C header files... yes
    checking for sys/types.h... yes
    checking for sys/stat.h... yes
    checking for stdlib.h... yes
    checking for string.h... yes
    checking for memory.h... yes
    checking for strings.h... yes
    checking for inttypes.h... yes
    checking for stdint.h... yes
    checking for unistd.h... yes
    yes
    checking valgrind/memcheck.h usability... no
    checking valgrind/memcheck.h presence... no
    checking for valgrind/memcheck.h... no
    checking for shm_open in -lrt... no
    checking whether to include code coverage symbols... no
    checking for ld used by cc... /usr/bin/ld
    checking if the linker (/usr/bin/ld) is GNU ld... no
    checking for /usr/bin/ld option to reload object files... -r
    checking for BSD-compatible nm... /usr/bin/nm
    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... 196608
    checking command to parse /usr/bin/nm output from cc object... ok
    checking for objdir... .libs
    checking for ar... ar
    checking for ranlib... ranlib
    checking for strip... strip
    checking for dsymutil... dsymutil
    checking for nmedit... nmedit
    checking for -single_module linker flag... yes
    checking for -exported_symbols_list linker flag... yes
    checking if cc supports -fno-rtti -fno-exceptions... yes
    checking for cc option to produce PIC... -fno-common
    checking if cc PIC flag -fno-common works... yes
    checking if cc static flag -static works... no
    checking if cc supports -c -o file.o... yes
    checking whether the cc linker (/usr/bin/ld) supports shared libraries... yes
    checking dynamic linker characteristics... darwin12.4.0 dyld
    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
    configure: creating ./config.status
    config.status: creating config.h
    running: make
    /bin/sh /private/tmp/pear/temp/pear-build-benatespinagk8kAT/APC-3.1.13/libtool --mode=compile cc -D_GNU_SOURCE -I. -I/private/tmp/pear/temp/APC -DPHP_ATOM_INC -I/private/tmp/pear/temp/pear-build-benatespinagk8kAT/APC-3.1.13/include -I/private/tmp/pear/temp/pear-build-benatespinagk8kAT/APC-3.1.13/main -I/private/tmp/pear/temp/APC -I/Applications/MAMP/bin/php/php5.4.10/include/php -I/Applications/MAMP/bin/php/php5.4.10/include/php/main -I/Applications/MAMP/bin/php/php5.4.10/include/php/TSRM -I/Applications/MAMP/bin/php/php5.4.10/include/php/Zend -I/Applications/MAMP/bin/php/php5.4.10/include/php/ext -I/Applications/MAMP/bin/php/php5.4.10/include/php/ext/date/lib  -DHAVE_CONFIG_H  -g -O2   -c /private/tmp/pear/temp/APC/apc.c -o apc.lo
    mkdir .libs
     cc -D_GNU_SOURCE -I. -I/private/tmp/pear/temp/APC -DPHP_ATOM_INC -I/private/tmp/pear/temp/pear-build-benatespinagk8kAT/APC-3.1.13/include -I/private/tmp/pear/temp/pear-build-benatespinagk8kAT/APC-3.1.13/main -I/private/tmp/pear/temp/APC -I/Applications/MAMP/bin/php/php5.4.10/include/php -I/Applications/MAMP/bin/php/php5.4.10/include/php/main -I/Applications/MAMP/bin/php/php5.4.10/include/php/TSRM -I/Applications/MAMP/bin/php/php5.4.10/include/php/Zend -I/Applications/MAMP/bin/php/php5.4.10/include/php/ext -I/Applications/MAMP/bin/php/php5.4.10/include/php/ext/date/lib -DHAVE_CONFIG_H -g -O2 -c /private/tmp/pear/temp/APC/apc.c  -fno-common -DPIC -o .libs/apc.o
    In file included from /private/tmp/pear/temp/APC/apc.c:34:
    /private/tmp/pear/temp/APC/apc.h:61:10: fatal error: 'php.h' file not found
    #include "php.h"
             ^
    1 error generated.
    make: *** [apc.lo] Error 1
    ERROR: `make' failed
    
  • Answers
    Know someone who can answer? Share a link to this question via email, Google+, Twitter, or Facebook.

    Related Question

    linux - Using PHP's APC (Alternative PHP Cache)?
  • matt74tm

    I've installed APC.so successfully on my system, but I'm not sure what to do next...

    PHP info says:

    apc
    APC Support     enabled
    Version     3.0.19
    MMAP Support    Enabled
    MMAP File Mask  no value
    Locking type    pthread mutex Locks
    Revision    $Revision: 3.154.2.5 $
    Build Date  Sep 24 2010 05:10:07 
    

    How do I enable my application to use APC?


  • Related Answers
  • Ben XO

    If APC is installed correctly, it will be used automatically by all scripts. You should see a speed improvement (usually in the form that your server can sustain more simultaneous page loads).

  • VxMxPx

    Well, the most basic things, you can cache variables by using:

    apc_add('foo', $bar);
    

    And retrieve them with:

    apc_fetch('foo');
    

    You can read more about how to use APC here: http://php.net/manual/en/book.apc.php