Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Can't phpize or configure an extension in OS X 10.9 Mavericks

I am trying to build the memcached extension on OS X 10.9 Mavericks for use with the built in PHP 5.4, initially I tried pecl install memcached but that threw the following.

checking for zlib location... configure: error: memcached support requires ZLIB. Use --with-zlib-dir=<DIR> to specify the prefix where ZLIB headers and library are located ERROR: `/private/tmp/pear/install/memcached/configure' failed 

So I created a tmp directory and executed pecl download memcached, unzipped the code and cd'd to the appropriate directory.

Trying to phpize it returned the following:

grep: /usr/include/php/main/php.h: No such file or directory grep: /usr/include/php/Zend/zend_modules.h: No such file or directory grep: /usr/include/php/Zend/zend_extensions.h: No such file or directory Configuring for: PHP Api Version:         Zend Module Api No:      Zend Extension Api No:   

I had brew installed zlib a while ago and pointed ./configure at my installation. ./configure --with-zlib-dir=/usr/local/Cellar/zlib/1.2.8 I was greeted with the following error message:

checking for session includes... configure: error: Cannot find php_session.h 

So now I'm wondering the best course of action here... /usr/include/ doesn't exist at all... is this a Mavericks thing? I don't remember having this problem in 10.8 at all.

I could try brew installing php-devel but I presume that isn't going to be the right version of what I need? Any help would be greatly appreciated here

Update

locate php_session.h reveals

/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/usr/include/php/ext/session/php_session.h

should I just ln -s this to the expected location or is there some way to do this via XCode? I have the command line tools installed...

like image 695
donatJ Avatar asked Oct 23 '13 01:10

donatJ


1 Answers

run xcode-select --install to install the XCode5 Command Line Tools, then sudo pecl install memcache. You should be good to go.

like image 106
afessler Avatar answered Sep 28 '22 08:09

afessler