mac中php安装、编译扩展

沧浪水

1.安装命令

最新版 8.0.x

brew install php
brew upgrade php

版本控制:切换到7.4

brew install php@7.4
brew link --overwrite php@7.4
# .zshrc
export PATH="$PATH:/usr/local/opt/php@7.4/bin:/usr/local/opt/php@7.4/sbin"
扩展应首先尝试 pecl install xx 安装。

不通过时的情况:如:swoole、uuid,下面为踩坑经验。

- uuid

brew install util-linux
printf "/usr/local/opt/util-linux" | sudo pecl install uuid

2.fatal error: 'php.h' file not found

百度方案: brew doctor && brew link --overwrite php
【修复系统链接】,仍然有问题。

下面是sdebug安装实例:

git clone git@github.com:swoole/sdebug.git -b sdebug_2_9 --depth=1
cd sdebug
phpize
./configure
make clean
make
make install
查找 php.h 等,缺啥加上就行

或去官网下载当前版本的php解压,复制相应目录

cp -r /usr/local/include/php/ sdebug
make 
find . -name zend.h
cp ./Zend/* .
make 
find . -name TSRM.h
cp ./TSRM/* .
make

成功,继续

make install
ll  /usr/local/Cellar/php/7.4.12/lib/php/20190902/

可以看到 xdebug.so 已经好了,添加即可。

总体就是
cp -r /usr/local/include/php/ sdebug && cp ./Zend/* . && cp ./TSRM/* .

然后重新 make,添加到php.ini:

zend_extension=php_xdebug

调试《沈唁: Swoole 如何使用 Xdebug 进行单步调试

3.swoole

升级php

brew install php || brew upgrade php
如果php -v环境版本不正确:
brew info php
# 显示安装目录 /usr/local/opt/php@8.0
vim ~/.bash_profile
export PATH="/usr/local/opt/php@8.0/bin:/usr/local/opt/php@8.0/sbin:$PATH"
source ~/.bash_profile

安装swoole

git clone https://gitee.com/swoole/swoole.git
cd swoole/ && phpize
# brew install openssl && brew info openssl
./configure --with-php-config=/usr/local/opt/php@8.0/bin/php-config --with-openssl-dir=/usr/local/opt/openssl@1.1 --enable-http2 --enable-sockets
make && make install
echo 'extension=swoole' >> /usr/local/etc/php/8.0/php.ini
阅读 1.5k
90 声望
9 粉丝
0 条评论
90 声望
9 粉丝
文章目录
宣传栏