写在前面
安装R包报错的问题从一开始学生信就一直存在着,但是没有专门整理一下,前两天安装 CHIPseeker 的时候实在受不了了,因为碰见了好多坑,于是在这里专门整理一下,方便自己和他人查看
安装的时候要注意R版本问题(比如 R3.6 以后就无法用 biocLite 了)以及包版本问题,不懂为啥的时候就多尝试几种方法,总有一个适合你~
用的 R3.5.0
问题 1 不存在叫‘gplots’这个名字的程辑包
Error: package or namespace load failed for ‘ChIPseeker’ in loadNamespace(j <- i[[1L]], c(lib.loc, .libPaths()), versionCheck = vI[[j]]):
不存在叫‘gplots’这个名字的程辑包
#安装这个包
> install.packages("gplots")
#继续报错
Warning in install.packages :
dependency ‘caTools’ is not available
#安装他的依赖包 caTools
>install.packages("caTools")
Warning in install.packages :
package ‘caTools’ is not available (for R version 3.5.0)
到这里已经没太有耐心了,然后开始查原因,后面应该加一个 type = "binary"
再试一下
>install.packages("caTools", type = "binary")
trying URL 'https://mirrors.tuna.tsinghua.edu.cn/CRAN/bin/windows/contrib/3.5/caTools_1.17.1.4.zip'
Content type 'application/zip' length 329947 bytes (322 KB)
downloaded 322 KB
package ‘caTools’ successfully unpacked and MD5 sums checked
成功解决,安装 XML 时同样也是这个问题 ,跟上面是一种解决方式
问题 2 用 BiocManager 下载TxDb.Hsapiens.UCSC.hg38.knownGen报错
主要问题是包比较老,尝试用 biocLite 解决
>source("https://bioconductor.org/biocLite.R")
>biocLite("TxDb.Hsapiens.UCSC.hg38.knownGen")
BioC_mirror: https://bioconductor.org
Using Bioconductor 3.8 (BiocInstaller 1.32.1), R 3.5.0 (2018-04-23).
Installing package(s) ‘TxDb.Hsapiens.UCSC.hg38.knownGene’
installing the source package ‘TxDb.Hsapiens.UCSC.hg38.knownGene’
安装 TxDb.Hsapiens.UCSC.hg19.knownGene 就不能用 biocLite 了
>BiocManager::install("TxDb.Hsapiens.UCSC.hg19.knownGene")
问题 3 #Error in list2(...) : object '%>%' not found
Error : unable to load R code in package ‘dbplyr’
解决办法
#去清华镜像下载源码
wget https://mirrors.tuna.tsinghua.edu.cn/CRAN/src/contrib/dbplyr_1.4.4.tar.gz
#修改NAMESPACE,重新打包
tar xf dbplyr_1.4.3.tar.gz
echo 'importFrom(magrittr,"%>%")' >> dbplyr/NAMESPACE
tar cf dbplyr_1.4.3.tar.gz dbplyr/
#重新安装
install.packages('下载路径/dbplyr_1.4.3.tar.gz')
问题4 #Error:failed to lock directory
应该是之前安装包的时候中途停止了,再重新安装的时候就会出现这个报错
解决:去 lib_PATH下把lock文件删掉
问题 5 as ‘lib’ is unspecified 'lib = "C:/Program Files/R/R-2.15.2/library"' is not writable
路径问题,首先 .libPaths() 看一下,然后指定一个路径
> .libPaths()
>.libPaths("/PATH/R/x86_64-redhat-linux-gnu-library/3.6")
这里是问题 5的参考
最后
虽然讨论了一些R包安装问题,但这应(jue)该(dui)不会是我最后一次安装报错,以后再遇到会更新的
tidyverse安装问题
这个包安装起来太容易报错了,近期重新安装了R,将安装中遇到错误的包使用conda安装上,终于成功了
conda install -c conda-forge r-ragg
######进入R
BiocManager::install("tidyverse")
conda install -c conda-forge r-gert
install.packages("devtools")
再次更新
近期学习单细胞相关内容,需要安装很多R包,经过这几天的折腾,其实发现也就是那三板斧就可以完成R包的安装了
如果版本不合适,就去Index of /CRAN/src/contrib/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror网站下载安装包,然后install.packages("/usr/data/Rpackage/xxx.tar.gz")
就可以了,如果有需要的依赖无法安装,那就需要逐步安装他所需要的依赖,使用conda install -c conda-forge r-xxx
,当然这一步要慎用,特别是当你在一个环境下有很多R包时,conda打包安装好之后会跟原来的其他依赖包存在冲突,要多尝试几次找到最难安装的那个包使用conda进行安装。