博客 / 詳情

返回

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
user avatar
0 位用戶收藏了這個故事!

發佈 評論

Some HTML is okay.