Ubuntu 20.04.5执行pecl install mongodb报错:无可用版本,求解决
解决Ubuntu Server 20.04.5中
pecl install mongodb报错"No releases available for package..."的问题 以下是几种可行的解决方法,按顺序尝试:
1. 更新PECL源并清除缓存
PECL源可能过期导致无法定位mongodb包,先执行源更新:
pecl channel-update pecl.php.net
更新完成后清除本地缓存:
pear clear-cache
之后再次尝试安装:
pecl install mongodb
2. 匹配PHP版本指定扩展版本
mongodb扩展对PHP版本有明确兼容要求,比如最新版本不再支持PHP 7.4及以下版本。先查看当前PHP版本:
php -v
如果你的PHP版本较低(比如Ubuntu 20.04默认的PHP 7.4),需要指定适配的mongodb版本安装,例如:
pecl install mongodb-1.15.0
(注:1.15.0是支持PHP 7.4的最后一个稳定版本,可根据实际PHP版本调整对应版本号)
3. 安装编译依赖
缺少编译工具会导致PECL安装流程异常,先安装必要的依赖包:
sudo apt update && sudo apt install php-dev php-pear gcc make
安装完成后重新执行pecl install mongodb
4. 手动编译安装扩展
如果以上方法都无效,直接手动下载扩展包编译:
- 下载对应版本的mongodb扩展包(这里以1.15.0为例):
wget https://pecl.php.net/get/mongodb-1.15.0.tgz
- 解压包并进入目录:
tar -zxvf mongodb-1.15.0.tgz cd mongodb-1.15.0
- 生成编译配置文件:
phpize
- 配置编译环境:
./configure
- 编译并安装:
make && sudo make install
- 最后在PHP配置文件(如
/etc/php/7.4/cli/php.ini或/etc/php/7.4/fpm/php.ini)中添加:
extension=mongodb.so
重启PHP服务(如sudo systemctl restart php7.4-fpm)即可生效
内容的提问来源于stack exchange,提问作者Petitemo
相关产品推荐
相关产品推荐

