Mac-M1-swoole-yasd安装调试过程及问题记录
Mac M1安装报错 checking for boost… configure: error: lib boost not found. Try: install boost library
安装 boost 库
brew install boost
brew link boost
export CPLUS_INCLUDE_PATH=/opt/homebrew/Cellar/boost/1.76.0/include
export LD_LIBRARY_PATH=/opt/homebrew/Cellar/boost/1.76.0/lib
ln -s /opt/homebrew/Cellar/boost/1.76.0/lib/libboost_filesystem.dylib /usr/local/lib
ln -s /opt/homebrew/Cellar/boost/1.76.0/include/boost /usr/local/include/boost
从Github下载 yasd
git clone https://github.com/swoole/yasd.git
编译安装 yasd
cd yasd
phpize --clean && \
phpize && \
./configure && \
make clean && \
make && \
make install
修改 php.ini
zend_extension="yasd.so"
;命令行调试
;yasd.debug_mode=cmd
;远程调试
yasd.debug_mode=remote
;本地开发地址
yasd.remote_host=127.0.0.1
;本地开发监听端口
yasd.remote_port=9000
调试php脚本
php -e server.php
yasd配置项
配置项
debug_mode
调试模式,目前支持cmd
模式和remote
模式。
配置方法如下:
yasd.debug_mode=cmdCopy to clipboardErrorCopied
或者:
yasd.debug_mode=remoteCopy to clipboardErrorCopied
remote_host
IDE
监听的IP
。该配置只在remote
模式下生效。
remote_port
IDE
监听的Port
。该配置只在remote
模式下生效。
open_extended_info
默认是0
。
开启这个配置项之后,默认会在执行php
的时候添加-e
选项,这样,就不需要每次执行脚本的时候,添加-e
选项了:
yasd.open_extended_info=1Copy to clipboardErrorCopied
但是需要注意的是,默认开启-e
选项会拖慢composer
等工具的速度,所以yasd
在设计之初,就默认不开启-e
。而Xdebug
只要被安装了,就会拖慢composer
的速度。
breakpoints_file
配置断点缓存文件,该配置只在cmd
模式下生效。
log_level
是否生成调试日志,默认是-1
,表示不生成调试日志。该配置只在remote
模式下生效。
配置方法如下:
yasd.log_level=0Copy to clipboardErrorCopied
depth
一次返回的子元素深度,默认是1
。该配置只在remote
模式下生效。
配置方法如下:
yasd.depth=1Copy to clipboardErrorCopied
max_executed_opline_num
当前函数内,执行的语句最大条数,可用来检测死循环,默认是10000
。
配置方法如下:
yasd.max_executed_opline_num=50000Copy to clipboardErrorCopied
不要忘记给 yasd 一个 Star 哦