首页 > 其他分享 >R 包安装常见问题解决

R 包安装常见问题解决

时间:2022-10-08 22:15:29浏览次数:86  
标签:文件 gcc 常见问题 读者 版本 gfortran 解决 安装

1. 导读

日常中使用R语言进行数据分析,或者画图的读者,相信一定逃不过的一个操作就是安装R包,那么在R包安装过程中,可能会出现一些问题,有时候这些问题并不是R包仓库下载过程中网络和R语言本身的问题,而是系统中缺失一些配置或者编译器,本文将介绍一种常见的错误,并给以解决办法。

2. 问题

gfortran

最近一位读者,在进行常规的转录组分析时,要在R中进行差异分析,因此需要安装DESeq2这个包,但是在安装过程中出现上面了这种情况,导致包没有安装成功。细心的读者,可以看见,小编已经在上图中,用红色方框框选出来了,就是:/bin/gfortran: No such file or directory。其实这个错误与/usr/bin/ld: cannot find -lxxxx可以算是一类错误。R在安装你所需要的包时,可能会需要进行编译,编译的过程中,需要使用一些系统中的编译器和库文件,如果缺失这些文件,就会导致包安装不上,其实R中安装包,出现安装问题,大多都是这个原因(不包括包的版本之间出现冲突的情况)。下面就介绍如何解决这个错误。

3. 解决办法

首先检索安装过程中出现Error的区域,查看有XXX: No such file or directory或者cannot find -lxxxx的区域,确定缺少的文件或者依赖是什么。下面以上面的gfortran为例,进行排查和解决。

3.1. 安装

首先,我们需要检查系统中是否有对应的文件或者安装了依赖

# 在终端中,输入下面两条命令
# 读者在解决自己的错误时,请将`fortran`替换为自己对应的

ldconfig -p | grep fortran 

which fortran
  • 有结果

存在

一种情况就是上图这种,文件本身是存在的,只不过系统在使用过程中,可能存在:

  1. 版本不对应。
  2. 系统无法找到文件正确的位置

如果出现上面这个情况,请直接看3.2. 版本检测3.3. 更新链接

  • 没结果

不存在

如何出现上图这种,终端返回not found,那么代表系统中是不存在该文件或依赖的。其实这种情况更好解决,只需要在终端中安装即可,操作如下:

# linux 下
sudo apt update  # 更新
sudo apt install gfortran  # 安装

# mac 下
brew install gcc  # mac下 gcc 包含了 gfortran

# 读者需要将`gfortran`,换为自身缺失的软件,再去R中重新安装包即可。

注意:对于使用Mac的读者,这边建议将brew设置为国内源,可以参考:
Mac 下 brew 切换为国内源

3.2. 更新链接

如果在3.1.安装中发现,依赖是存在的,那么很有可能是系统中文件的链接不对,只需要重新添加一个符合链接即可。

# 在3.1.的结果中,查看文件的原始位置,并建立链接

sudo ln -s /usr/lib/x86_64-linux-gnu/libgfortran.so.3 /usr/lib/x86_64-linux-gnu/libgfortran.so

# 此处地址由第一步检查而来
# 链接完了,可以去`R`中重新安装,如果报错请参考`3.3.版本检查`

3.3. 版本检查

如果3.2.版本检查没有解决问题的话,就只有可能是软件的版本之间有冲突。对于这个例子的gfortran,它很有可能与gcc的版本之前存在冲突,因此需要将二者的版本安装为一致的。对于读者来说,想要确定冲突的软件,可以在百度中以需要安装的软件和冲突为关键词,确定可能冲突的软件。

gcc --version  # 查看 gcc 版本

gfortran --version  # 查看 gfortran 版本 

# 如果不一致则,重新安装gcc或gfortran为一致版本,再重新安装R包即可。

因此读者们在安装R包时,如果出现安装不成功的情况,一定要仔细阅读安装过程中打印出来的日志,查看问题的根源,在浏览器中检索,一般都有解决方案。

本文由mdnice多平台发布

标签:文件,gcc,常见问题,读者,版本,gfortran,解决,安装
From: https://www.cnblogs.com/swindler/p/16770429.html

相关文章

  • 归档tar、安装rpm命令
    tar打包 -c创建一个新的档案文件,新建 -t查看档案文件的内容,查看 -x分解档案文件的内容,解压 -f命名 -v显示过程信息 -z压缩  tarcvf   打包(但不......
  • 在Linux服务器上安装部件后的检查
    一般在服务器上将部件安装好之后,肯定是要检查我们安装的到底正不正确了。常用的方法是①查看日志,看有没有ERROR或者WARN之类,一个是Java日志,catalina.out,一个就是业务自身......
  • Shell脚本实现自动化安装
    在Linux环境下,实现多个软件包的自动化安装步骤:1、找到软件包,提取软件包的名字建立解压路径(为了让我们更清楚的找到我们的文件)pkg=`find${PACKAGE_PATH}-name*BIN*.tar.gz......
  • CentOS 7 离线安装指定版本docker
    这里以docker-ce-18.06版本为例第一步:下载指定版本docker安装包wget--no-check-certificatehttps://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/7.9/x86_64......
  • 安装Rabbitmq记录
    rabbitmq官网​​​https://www.rabbitmq.com/install-rpm.html​​第一步安装erlang参考​​​http://soft.dog/2016/04/20/RabbitMQ-cli-rabbitmqadmin/#section​​......
  • ENVI5.3安装教程(含软件,仅用于学习试用)
    ENVI5.3安装教程(含软件仅用于学习试用)​​ENVI5.3安装包​​​​ENVI5.3安装教程​​ENVI5.3安装包链接:https://pan.baidu.com/s/1sa9V1-R7cOAx0wnfyEMAAw?pwd=ip1d提取码:i......
  • WebLogic 的安装与配置(windows上)
    WebLogic 的安装与配置(windows上)前言:什么是WebLogic?WebLogic 是一个基于JavaEE 架构的中间件,纯java 开发的,是一款Web 服务器,作用和“Tomcat”类似,比tomcat 功能更......
  • Metashape(Photoscan)【制作DOM和DEM】超级详细的步骤,文末有安装包
    Metashape(Photoscan)【制作DOM和DEM】超级详细的步骤​​1.Metashape软件操作简介​​​​1.1.Metashape页面简介​​​​1.2.Metashape工作流程介绍​​​​1.3.Metashape......
  • Linux安装中文字体(已验证)
    1.安装字体命令sudoaptinstall-yfontconfig2.查看已安装的字体(1)查看linux已安装字体fc-list(2)查看linux已安装中文字体fc-list:lang=zh可以看看有没有......
  • 无sudo权限解决Anaconda libstdc++.so.6: version `GLIBCXX_3.4.20' not found
    查找包含`GLIBCXX_3.4.20'的libstdc++find/-name"libstdc++.so*"///为根目录下搜索,可以替换为用户指定路径根据上述指令显示的文件,选择一个最新版本的查看是否......