安装PHP扩展,第一时间就会想到用phpize,网上随便一搜就可以找到很好教学。可是,道理我都懂,为什么就是耗了我几个小时呢?
1、去php.net 下载相应版本源码,放入
/Application/MAMP/bin/php/php5.6.10/include/php
2、 进入相应的扩展目录,运行phpize
$cd /Application/MAMP/bin/php/php5.6.10/include/php/ext/pcntl
$/Applications/MAMP/bin/php/php5.6.10/bin/phpize
应该会返回提示,类似
3、 可以编译了
./configure --with-php-config=/Application/MAMP/bin/php/php5.6.10/bin/php-config –with-php-config
//指向当前使用的php版本中的php-config,如果这个路径错了,编译成功也不能用的。
4、似乎还比较顺利:
make && make install
那么问题就来了 fatal error:’zend_config.h’ file not found。
直接搜索整台计算机:find / -name ‘zend_config.h’ 都没找到这个文件,好不容易从网上找到了。接着报错fatal error:’conf.w32.h’ file not found。
搜索了好一阵,找到问题:MAMP把这些头文件都删了….你需要多走一步:
$cd /Applications/MAMP/bin/php/php5.6.10/include/php/
$./configure
提示未指明icov的路径,直接加上 –without-icov ,只要能./configure成功就行,也不需要make && make install.
现在重走第3、4步,编译成功应该会提示
最后在php.ini加上extension=pcntl.so, 重启mamp
sudo ./configure –prefix=/usr/local