Ubuntu Server 22.10安装R 4.2.2失败求助:仅能安装4.2.1
解决Ubuntu Server 22.10安装R 4.2.2的依赖问题
你的问题本质是版本适配冲突:Ubuntu Server 22.10(Kinetic Kudu)自带的libicu版本为71.1,而R 4.2.2的预编译包是针对Ubuntu 22.04(Jammy Jellyfish,LTS)构建的,依赖的libicu70在Kinetic的软件源中不存在,导致依赖无法满足。Ubuntu 22.10的官方源及CRAN适配源里,R的默认版本就是4.2.1,因此直接通过包管理工具安装4.2.2会失败。
下面是可行的解决办法:
方法一:从源码编译安装R 4.2.2
这是最稳妥的方案,编译过程会自动适配系统现有库(包括你已安装的libicu71):
- 先安装编译所需的依赖包:
sudo apt update && sudo apt build-dep r-base - 下载R 4.2.2源码包:可以从CRAN的源码发布页面获取
R-4.2.2.tar.gz格式的包,也可以用以下命令下载:wget https://cran.r-project.org/src/base/R-4/R-4.2.2.tar.gz - 解压并进入源码目录:
tar -xzf R-4.2.2.tar.gz && cd R-4.2.2 - 配置编译参数(默认安装到
/usr/local,可按需调整):./configure --prefix=/usr/local --enable-R-shlib - 编译并完成安装:
make && sudo make install
安装完成后,执行R --version即可验证版本是否为4.2.2。
方法二:修复r-doc-html损坏包问题(若保留包管理安装4.2.1)
如果暂时只想使用R 4.2.1并修复文档包的损坏问题,执行以下命令清理缓存并重新尝试安装:
sudo apt clean && sudo apt update sudo apt --fix-broken install r-doc-html
额外建议
Ubuntu 22.10是非LTS版本,生命周期仅到2023年7月,后续不会再收到官方更新。如果需要长期稳定使用R,建议迁移到Ubuntu Server 22.04 LTS——该版本的CRAN源支持R 4.2.2的预编译包,无需编译即可直接安装。
内容的提问来源于stack exchange,提问作者Emma Athan
相关产品推荐
相关产品推荐

