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

Ubuntu系统下PECL安装Gearman失败及gearman.so加载异常求助

解决Ubuntu下Gearman与PHP7.2兼容的安装问题

嘿,咱们来一步步拆解你遇到的问题并解决掉:
从报错信息里能看出三个核心问题:

  • 官方旧版的pecl/gearman扩展不支持PHP7.2版本,它的版本限制是>=5.1.0, <=6.0.0,但你当前安装的PHP是7.2.24
  • pecl的通道协议已经更新,需要先升级通道
  • 因为安装失败,导致PHP启动时找不到gearman.so扩展文件,触发警告

下面是具体的解决步骤:

1. 更新pecl通道

先执行这条命令更新pecl的通道协议,解决那个警告提示:

sudo pecl channel-update pecl.php.net

2. 安装适配PHP7+的Gearman扩展

官方的pecl/gearman主线版本停更了,咱们需要安装专门适配PHP7及以上版本的分支——gearman-2.1.0(这个版本支持PHP7.0到PHP8.1,完全兼容你的7.2版本):

sudo pecl install gearman-2.1.0

3. 配置PHP加载Gearman扩展

安装完成后,得让PHP能识别并加载这个扩展:

  • 先确认扩展文件的存放路径,执行这条命令查看:
pecl config-get ext_dir
  • 然后根据你使用的PHP环境(CLI命令行或者Web服务器,比如Apache),找到对应的配置目录:
    • 若用CLI:/etc/php/7.2/cli/conf.d/
    • 若用Apache:/etc/php/7.2/apache2/conf.d/
  • 在对应目录下创建20-gearman.ini文件,写入以下内容:
extension=gearman.so

4. 验证安装是否成功

执行这条命令检查扩展是否成功加载:

php -m | grep gearman

如果输出gearman,说明安装成功。别忘了重启你的Web服务器(比如Apache的话执行sudo systemctl restart apache2),让配置生效。

额外:解决编译依赖问题

如果安装过程中出现编译错误,大概率是缺少系统依赖,先安装这些包再重试:

sudo apt-get install libgearman-dev build-essential php7.2-dev

内容的提问来源于stack exchange,提问作者nikhil gantyala

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.08 12:42:39