从 0 开始编译安装 swoole 示例
官方文档:https://wiki.swoole.com/wiki/page/6.html
Swoole扩展是按照PHP标准扩展构建的。使用phpize来生成编译检测脚本,./configure来做编译配置检测,make进行编译,make install进行安装。
上面所说都是编译 php 扩展的通用过程。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | # 下载 release 版本 # # 注意:在国内下载 github 的资源,有时候不稳定,可以用迅雷等下载工具在本机下载好,再通过 SFTP 传到服务器 # cd /usr/local/src # 解压、进入目录 # 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 |
精简默认安装
1 2 3 | /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 输出:
1 2 3 4 5 | 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 加载进去
1 2 | [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 解决方法