ubuntu编译安装swoole (存多版本php时)
一 切换php版本
见 https://www.cnblogs.com/bushuwei/p/11699503.html
二 编译安装swoole
这里对pecl安装不做介绍,以下是编译安装,复制脚本执行即可
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 && \
phpize7.2 && \
./configure \
--with-php-config=/usr/bin/php-config7.2 \
--enable-coroutine \
--enable-openssl \
--enable-http2 \
--enable-async-redis \
--enable-sockets \
--enable-mysqlnd && \
make clean && make && sudo make install
相较于swoole官方文档中的源码安装,进行以下说明:
- .tmp -> tmp (.tmp文件路径不存在,改成tmp即可)
- phpize -> phpize7.2 (不同版本的php有对应的phpize,换了php版本后请不要再使用默认phpize)
- 增加 --with-php-config=/usr/bin/php-config7.2 \ (不同版本的php有对应的php-config)
- 选择swoole-src版本(最新版的往往需要最新版的php) https://github.com/swoole/swoole-src/archive/master.tar.gz->https://github.com/swoole/swoole-src/archive/v4.4.0.tar.gz
- 如phpize -v php-config-v查看各自的版本对应目录. 如whereis phpconfig来看各自的路径