- 编译安装
- 安装准备
- 下载地址
- 新手编译示例
- 进阶完整编译示例
- PECL
- 配置php.ini
编译安装
Swoole
扩展是按照PHP
标准扩展构建的。使用phpize
来生成编译检测脚本,./configure
来做编译配置检测,make
进行编译,make install
进行安装。
- 请下载
releases
版本的swoole
,直接从github
主干上拉取最新代码可能会编译不过 - 如无特殊需求, 请务必编译安装
swoole
的最新版本 - 如果当前用户不是
root
,可能没有PHP
安装目录的写权限,安装时需要sudo
或者su
- 如果是在
git
分支上直接git pull
更新代码,重新编译前务必要执行make clean
安装准备
安装前必须保证系统已经安装了下列软件
php-7.0
或更高版本gcc-4.8
或更高版本make
autoconf
pcre
(CentOS
系统可以执行命令:yum install pcre-devel
)
下载地址
- https://github.com/swoole/swoole-src/releases
- http://pecl.php.net/package/swoole
- http://git.oschina.net/swoole/swoole
下载源代码包后,在终端进入源码目录,执行下面的命令进行编译和安装
新手编译示例
cd swoole
phpize (ubuntu 没有安装phpize可执行命令:sudo apt-get install php-dev来安装phpize)
./configure
make
sudo make install
进阶完整编译示例
初次接触swoole的开发者请先尝试上方的简单编译,如果有进一步的需要,可以根据具体的需求和版本,调整以下示例的编译参数
编译参数参考
以下脚本会下载并编译master
分支的源码, 需保证你已安装所有依赖, 否则会遇到各种依赖错误
mkdir -p ~/build && \
cd ~/build && \
rm -rf ./swoole-src && \
curl -o ./tmp/swoole.tar.gz https://github.com/swoole/swoole-src/archive/master.tar.gz -L && \
tar zxvf ./tmp/swoole.tar.gz && \
mv swoole-src* swoole-src && \
cd swoole-src && \
phpize && \
./configure \
--enable-coroutine \
--enable-openssl \
--enable-http2 \
--enable-async-redis \
--enable-sockets \
--enable-mysqlnd && \
make clean && make && sudo make install
PECL
注意: PECL发布时间晚于Github发布时间
Swoole
项目已收录到PHP
官方扩展库,除了手工下载编译外,还可以通过PHP
官方提供的pecl
命令,一键下载安装
pecl install swoole
配置php.ini
编译安装成功后,修改php.ini
加入
extension=swoole.so
通过php -m
或phpinfo()
来查看是否成功加载了swoole.so
,如果没有可能是php.ini
的路径不对,可以使用php —ini
来定位到php.ini
的绝对路径。