You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu20.04+PHP7.4环境安装Swoole php-cp报错如何解决

问题说明

编译swoole/php-cp扩展时触发安装报错,当前运行环境:

  • 操作系统:Ubuntu 20.04
  • PHP版本:7.4
    报错根因是扩展原生源码未适配PHP7.4版本的内核API变更,编译过程直接中断。
修复步骤
  1. 安装编译依赖
sudo apt update
sudo apt install -y php7.4-dev gcc make autoconf libmysqlclient-dev php7.4-mysqlnd

必须安装PHP7.4对应的dev开发包,避免多版本PHP头文件混用导致的版本不匹配问题。

  1. 修改源码适配PHP7.4
    进入扩展源码目录,修正两处不兼容代码:
  • 打开php7/connect_pool.c文件,定位所有php_url_parse函数调用,删除手动传入的字符串长度入参。PHP7.4版本的该函数已自动处理入参长度,无需额外传参;
  • 同文件内全局搜索ZEND_ACC_USE_GUARDS宏相关的判断逻辑,直接删除该段判断即可。PHP7.4已移除该宏定义,相关对象守卫逻辑由内核自动处理,无需手动判断。
  1. 重新执行编译流程
phpize7.4
./configure --with-php-config=/usr/bin/php-config7.4 --with-mysqlnd=yes
make clean
make -j$(nproc)
sudo make install

configure阶段加--with-mysqlnd=yes强制使用PHP内置mysqlnd驱动,避免和系统libmysqlclient产生符号冲突。

  1. 验证安装
    在对应php.ini配置文件中追加extension=connect_pool.so,执行命令php -m | grep connect_pool,输出扩展名称即代表安装加载成功。

内容的提问来源于stack exchange,提问作者Tilon UZ

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.31 00:21:14