1、下载 swoole 源码
https://github.com/swoole/swoole-src/releases
2、上传到服务器 /root 下面,并解压
3、生成 configure 文件
我们都知道,编译有 三个步骤,分别是 configure,make,make install
但我们发现,解压后的 swoole 源码是没有 configure 文件的,这时我们就需要使用 PHP 的 phpize 工具去为 swoole 生成 configure 文件。
注:phpize 是 PHP 用来扩展 PHP 扩展模块的。
这个 phpize 的位置位于:
进入 swoole 目录,并执行 phpize,生成 configure
cd /root/swoole-src-4.4.16
/mySoft/php/bin/phpize
报错:Cannot find autoconf. Please check your autoconf installation
yum install -y autoconf
报错原因是因为没有安装 autoconf
安装 autoconf 之后再次执行 /mySoft/php/bin/phpize
/mySoft/php/bin/phpize
执行成功后,我们发现,已经多了一个 configure 文件了。
4、执行 ./configure
对即将安装的软件进行配置,检查当前的环境是否满足要安装软件的依赖关系,如果满足,则会生成 makefile 文件,以供后续进行 make 和 make install
./configure
报错:
configure: error: C++ preprocessor "/lib/cpp" fails sanity check
yum install -y glibc-headers gcc-c++
再次执行 ./configure
出现下面这个界面,说明 检测配置及依赖通过,并已经生成 Makefile 文件
5、执行 make(编译)
make
出现下面这个界面,说明编译成功
6、执行 make install(安装)
make install
出现下面这个界面,说明 swoole 扩展安装成功
7、说明:
我们从上图里可以看到 PHP 的扩展其实是在 /mySoft/php/lib/php/extensions/no-debug-non-zts-20180731/ 目录下的
cd /mySoft/php/lib/php/extensions/no-debug-non-zts-20180731/
ls
我们可以看到,这个目录下有一个 swoole.so 的文件,其实这个就是我们通过 swoole源码,经过这一系列操作生成的 swoole扩展。
8、修改 php.ini,添加对 swoole 扩展的支持
vi /mySoft/php/lib/php.ini
注:可以通过命令 find / -name php.ini
找到你的 php.ini 文件位置
添加如下代码:
extension=swoole
如下图:
到现在,已经可以正常使用 swoole 了。
9、查看当前安装的 swoole 版本
因为目前swoole还在不断地迭代更新,并且每一个版本之间,未必能够完全兼容,这时,swoole的版本信息获取就很重要了。
php --ri swoole | grep Version