Debian 9安装php7.0-intl时遇libicu60依赖问题求助
解决Debian 9安装PHP intl扩展时libicu60实验版本报错的方案
我之前帮好几个用户搞定过Debian 9上装PHP intl扩展时碰到的这个libicu60实验版警告问题,确实挺闹心的——Debian 9(Stretch)官方仓库里的libicu60属于experimental源,稳定性没保障,所以安装时会弹出缺陷提示。下面是几个经过验证的靠谱解决方案,你可以根据自己的情况选:
方案一:启用Stretch Backports源安装稳定兼容版本
Backports源提供了针对Debian稳定版的向后移植软件包,都是经过测试的稳定版本:
- 编辑源列表文件:
sudo nano /etc/apt/sources.list,添加以下内容:deb http://deb.debian.org/debian stretch-backports main - 更新本地源缓存:
sudo apt update - 安装PHP intl扩展(指定从backports源获取):
sudo apt -t stretch-backports install php-intl - 这个方法会自动匹配兼容的稳定版libicu,不会触发实验版本的警告
方案二:手动安装Debian 9原生稳定版libicu
如果不想启用额外源,可以手动安装Debian 9默认的libicu57稳定版本:
- 先卸载已安装的实验版libicu(如果之前装了的话):
sudo apt purge libicu60 - 根据你的系统架构下载对应版本的libicu57包(以amd64为例):
wget http://ftp.debian.org/debian/pool/main/i/icu/libicu57_57.1-6+deb9u4_amd64.deb - 安装下载的包:
sudo dpkg -i libicu57_57.1-6+deb9u4_amd64.deb - 最后安装PHP intl:
sudo apt install php-intl - 注意:如果出现依赖错误,执行
sudo apt -f install自动修复即可
方案三:使用第三方PHP源(Sury源)
Sury源是专门提供PHP相关软件包的第三方源,针对Debian各版本做了优化,兼容性很好:
- 添加Sury源的GPG密钥:
curl -sSL https://packages.sury.org/php/apt.gpg | sudo apt-key add - - 添加源到系统:
echo "deb https://packages.sury.org/php/ stretch main" | sudo tee /etc/apt/sources.list.d/php.list - 更新源缓存:
sudo apt update - 安装PHP intl:
sudo apt install php-intl - 这个源提供的PHP扩展会自动适配系统的稳定依赖,完全避开实验版libicu的问题
小提示:操作前建议备份一下重要的系统配置,避免依赖冲突导致意外问题。如果安装过程中遇到任何依赖报错,优先尝试
sudo apt -f install来自动修复依赖链。
内容的提问来源于stack exchange,提问作者Pierre
相关产品推荐
相关产品推荐

