多 PHP 版本共存的环境下安装 Swoole 到指定版本

今天开始尝试安装 swoole,本地使用的是 homestead 虚拟机,它本身提供了 4 个 php 版本切换。

第一次按照教程安装 swoole 时,swoole 扩展直接安装到了 php 7.2 的版本中,我在 php 5.6 的版本里没有找到对应的扩展。

那么怎么才能在指定的版本下安装扩展呢,搜寻了一番发现下面这个方法:

// 1. 下载 swoole 源码到本地,我是下载到 /usr/local/ 目录下
$ git clone https://github.com/swoole/swoole-src.git

这里需要注意,进行编译前需要确认环境是否安装 phpize,我的 homestead 里是没有的,所以需要另外安装。因为 homestead 有多个版本,我们需要安装对应版本的 phpize

// 执行下面语句可以安装对应版本的 phpize
$ sudo apt-get install php5.6-dev   // php 5.6 版本
$ sudo apt-get install php7-dev     // php 7.0 版本
$ sudo apt-get install php7.1-dev   // php 7.1 版本
$ sudo apt-get install php7.2-dev   // php 7.2 版本

下面继续编译安装的环节

// 2. 进入该目录,进行编译
$ cd /usr/local/swoole-src/
$ sudo phpize5.6
$ sudo ./configure --with-php-config=/usr/bin/php-config5.6    // 这里需要加上 --with-php-config,路径是 php-config 对应版本的路径
$ sudo make
$ sudo make install

编译完成后,修改 php.ini 加入

extension=swoole.so

保存修改,使用 php -m | grep swoole 查看是否安装成功。

本作品采用《CC 协议》,转载必须注明作者和本文链接
本帖由系统于 4年前 自动加精
JasonG
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
讨论数量: 5

其实就是替换phpize 和--with-php-config

5年前 评论

直接 pecl 不好么。

5年前 评论
JasonG

@Wi1dcard 我用 pecl 安装时,只能安装到最新的版本,没法指定版本。

5年前 评论
mengdodo 2年前

同样遇到了这个问题。在homestead中没有发现php-config5.6

感谢

5年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!