当前位置: 首页 > news >正文

R语言---Ubuntu中R语言更新至R4.2.1和R包devtools下载

R语言---Ubuntu中R语言更新至R4.2

        • 1. Ubuntu18.04升级R语言至R4.2
          • (1)更新下载地址
          • (2)sudo下载
        • 2. 重新下载R包
          • (1)只更新Bioconductor包
          • (2)更新所有包
        • 3. R包devtools下载
        • 4. 总结

时间: 2022-10-23

1. Ubuntu18.04升级R语言至R4.2

进入R官网(https://cloud.r-project.org/)进入ubuntu下载页面,或者直接搜索Ubuntu Packages For R - Brief Instructions进入。

(1)更新下载地址
# update indices
sudo apt update -qq

# install two helper packages we need
sudo apt install --no-install-recommends software-properties-common dirmngr

# add the signing key (by Michael Rutter) for these repos
# To verify key, run gpg --show-keys /etc/apt/trusted.gpg.d/cran_ubuntu_key.asc 
# Fingerprint: E298A3A825C0D65DFD57CBB651716619E084DAB9
wget -qO- https://cloud.r-project.org/bin/linux/ubuntu/marutter_pubkey.asc | \
      sudo tee -a /etc/apt/trusted.gpg.d/cran_ubuntu_key.asc

# add the R 4.0 repo from CRAN -- adjust 'focal' to 'groovy' or 'bionic' as needed
sudo add-apt-repository "deb https://cloud.r-project.org/bin/linux/ubuntu $(lsb_release -cs)-cran40/"
(2)sudo下载

下载最新版本R语言

sudo apt install --no-install-recommends r-base

详细版本的R更新可以查看:

https://cloud.r-project.org/bin/linux/ubuntu/fullREADME.html

2. 重新下载R包

(1)只更新Bioconductor包

ComplexHeatmap为例:

https://www.bioconductor.org/packages/release/bioc/html/ComplexHeatmap.html

发现现在的页面版本是Bioconductor version: Release (3.15),不确定版本可以使用下面尝试加载命令,会提示正确版本信息:

if (!require("BiocManager", quietly = TRUE))
    install.packages("BiocManager")

随后更新BiocManager版本至3.15,此时就会更新所有的Bioconductor包(比较费时):

BiocManager::install(version = '3.15')
(2)更新所有包

更新CRAN, Bioconductor和Github上的R包:

require(rvcheck)
update_all()

可以考虑将该命令放入系统中,每个月或几个月更新一次,实现R包更新自动化,不必每次手动检查了:

rvcheck::update_all()

3. R包devtools下载

为了更好的使用Github中的R包,需要下载devtools以此来获得Github中的野包(未被CRAN收录):
打开R4.2.1,下载devtools:

install.packages("devtools")

该软件包含很多依赖包,下载到后面出现报错:

usethis R包不能安装,提示gert这个依赖包不能安装。

仔细看报错信息,看Ubuntu那行原来是缺少系统文件:

Configuration failed to find libgit2 library. Try installing:
 * brew: libgit2 (MacOS)
 * deb: libgit2-dev (Debian, Ubuntu, etc)
 * rpm: libgit2-devel (Fedora, CentOS, RHEL)

下载系统文件:

sudo apt install  libgit2-dev

继续下载遇到同样的错误,看Ubuntu那行原来是缺少系统文件:

Configuration failed to find the harfbuzz freetype2 fribidi library. Try installing:
 * deb: libharfbuzz-dev libfribidi-dev (Debian, Ubuntu, etc)
 * rpm: harfbuzz-devel fribidi-devel (Fedora, EPEL)
 * csw: libharfbuzz_dev libfribidi_dev (Solaris)
 * brew: harfbuzz fribidi (OSX)
If harfbuzz freetype2 fribidi is already installed, check that 'pkg-config' is in your
PATH and PKG_CONFIG_PATH contains a harfbuzz freetype2 fribidi.pc file. If pkg-config
is unavailable you can set INCLUDE_DIR and LIB_DIR manually via:
R CMD INSTALL --configure-vars='INCLUDE_DIR=... LIB_DIR=...'
-------------------------- [ERROR MESSAGE] ---------------------------
<stdin>:1:10: fatal error: hb-ft.h: 没有那个文件或目录
compilation terminated.
--------------------------------------------------------------------
ERROR: configuration failed for package ‘textshaping’
* removing /home/cfc424/R/x86_64-pc-linux-gnu-library/4.2/textshaping’

下载的程序包在
	/tmp/RtmpBDL8b7/downloaded_packages’里
Warning message:
In install.packages("textshaping") :

下载系统文件:

sudo  apt  install  libharfbuzz-dev  libfribidi-dev

再次运行install.packages("devtools"),顺利完成,成功安装devtools。

4. 总结

R语言版本和R包版本是要常常更新的,否则时间长了,容易出现软件安装无法安装依赖包情况,这个时候,如果软件依赖过多,就只能重新下载R语言了,不必折腾过老的R版本,毫无价值。

参考:
https://cloud.r-project.org/ (R官网)
https://cloud.r-project.org/bin/linux/ubuntu/fullREADME.html (下载R和R包全文档)
https://github.com/r-lib/textshaping/issues/21 (devtools安装中报错查询)

相关文章:

  • 笔试强训48天——day9
  • 什么是盒子模型中的边框
  • 2022海德堡桂冠论坛(HLF)见闻录
  • 动态规划-状态压缩、树形DP问题总结
  • AD936x_IIO Oscilloscope基本使用技巧
  • 【小刘带你玩儿前端】什么是跨域以及如何解决?小刘带你轻松拿彻底解决~
  • 大数据必学Java基础(八十五):自定义注解
  • 跨平台应用开发进阶(四十二)vue与nvue页面设计方案探究
  • Pytorch的加速和优化
  • opencv PIL读取图像得到的图像格式
  • 支持JDK19虚拟线程的web框架,之三:观察运行中的虚拟线程
  • 基于Redis实现分布式锁(理论篇)
  • 一加8 pro 刷入 kali Hunter
  • 【C++】模板初阶
  • TPM分析笔记(十二)TPM PCR操作
  • 时间复杂度分析经典问题——最大子序列和
  • 【跃迁之路】【519天】程序员高效学习方法论探索系列(实验阶段276-2018.07.09)...
  • android高仿小视频、应用锁、3种存储库、QQ小红点动画、仿支付宝图表等源码...
  • JavaWeb(学习笔记二)
  • React-Native - 收藏集 - 掘金
  • Ruby 2.x 源代码分析:扩展 概述
  • SpingCloudBus整合RabbitMQ
  • 缓存与缓冲
  • 聚簇索引和非聚簇索引
  • 蓝海存储开关机注意事项总结
  • 力扣(LeetCode)965
  • 聊聊directory traversal attack
  • 浅谈Kotlin实战篇之自定义View图片圆角简单应用(一)
  • 日剧·日综资源集合(建议收藏)
  • 如何学习JavaEE,项目又该如何做?
  • 使用前端开发工具包WijmoJS - 创建自定义DropDownTree控件(包含源代码)
  • 吐槽Javascript系列二:数组中的splice和slice方法
  • 新版博客前端前瞻
  • MiKTeX could not find the script engine ‘perl.exe‘ which is required to execute ‘latexmk‘.
  • ionic入门之数据绑定显示-1
  • MyCAT水平分库
  • postgresql行列转换函数
  • RDS-Mysql 物理备份恢复到本地数据库上
  • ​如何使用ArcGIS Pro制作渐变河流效果
  • #define与typedef区别
  • #QT项目实战(天气预报)
  • #免费 苹果M系芯片Macbook电脑MacOS使用Bash脚本写入(读写)NTFS硬盘教程
  • #使用清华镜像源 安装/更新 指定版本tensorflow
  • #我与Java虚拟机的故事#连载13:有这本书就够了
  • (+4)2.2UML建模图
  • (30)数组元素和与数字和的绝对差
  • (pojstep1.1.1)poj 1298(直叙式模拟)
  • (阿里巴巴 dubbo,有数据库,可执行 )dubbo zookeeper spring demo
  • (八)Flask之app.route装饰器函数的参数
  • (顶刊)一个基于分类代理模型的超多目标优化算法
  • (附源码)springboot建达集团公司平台 毕业设计 141538
  • (附源码)springboot美食分享系统 毕业设计 612231
  • (每日持续更新)信息系统项目管理(第四版)(高级项目管理)考试重点整理第3章 信息系统治理(一)
  • (南京观海微电子)——I3C协议介绍
  • (十六)Flask之蓝图