从 0 开始编译安装 swoole 示例
官方文档:https://wiki.swoole.com/wiki/page/6.html
Swoole扩展是按照PHP标准扩展构建的。使用phpize来生成编译检测脚本,./configure来做编译配置检测,make进行编译,make install进行安装。
上面所说都是编译 php 扩展的通用过程。
# 下载 release 版本 #
# 注意:在国内下载 github 的资源,有时候不稳定,可以用迅雷等下载工具在本机下载好,再通过 SFTP 传到服务器 #
cd /usr/local/src
wget https://github.com/swoole/swoole-src/archive/master.tar.gz
# 解压、进入目录 #
tar xzvf swoole-src-master.tar.gz
cd swoole-src-master
# 生成编译检测脚本、配置检查、编译安装 #
# phpize、php-config 请使用你自己的路径 #
/www/server/php/72/bin/phpize && \
./configure --with-php-config=/www/server/php/72/bin/php-config \
--enable-coroutine --enable-openssl \
--enable-http2 \
--enable-async-redis \
--enable-sockets \
--enable-mysqlnd && \
make clean && make && sudo make install
精简默认安装
/www/server/php/72/bin/phpize && \
./configure --with-php-config=/www/server/php/72/bin/php-config && \
make clean && make && sudo make install
如果上述步骤顺利的话,就会有 Build complete 输出:
Build complete.
Don't forget to run 'make test'.
Installing shared extensions: /www/server/php/72/lib/php/extensions/no-debug-non-zts-20170718/
Installing header files: /www/server/php/72/include/php/
cd /www/server/php/72/lib/php/extensions/no-debug-non-zts-20170718/
就能找到 swoole.so 文件了
修改 php.ini 文件,将 swoole.so 加载进去
[swoole]
extension = /www/server/php/72/lib/php/extensions/no-debug-non-zts-20170718/swoole.so
通过 php -m | grep swoole
来查看是否成功加载了swoole
相关错误
编译安装swoole报错 Enable http2 support, require nghttp2 library.
swoole安装异步redis –enable-async-redis出错 hiredis/hiredis.h: No such file or directory 解决方法