安装R包MTA遇到的那些事儿
在安装R包MTA时发现有些依赖的包没有安装,反正在家闲来无事,就拿出手记录一下吧:

- 先找一个看着简单的R包
fda
试试吧:

bingo!安装上了!
-
接着安装
toOrdinal
,同样是使用BiocManager::install()
命令,问题也得到了很好的解决,安装过程就不截图了~ -
在接下来,如法炮制,安装
matlib
,到这里就遇到问题了,也是我这两天一直在折腾的地方:

有几个包在安装过程中遇到了报错,那就再单独安装一下这几个软件看具体的报错信信息,首先是curl
,报错信息如下:

检查$PATH
后发现'pkg-config' 是在环境变量中的,但是我之前并未配置过$PKG_CONFIG_PATH
,而且在相应目录/usr/local/lib/pkgconfig/
下也没有发现libcurl.pc
文件,经过网上搜索发现如下做法是可以解决这一问题的:
$wget https://github.com/curl/curl/releases/download/curl-7_55_0/curl-7.55.0.tar.gz
$./configure
$make
$sudo make install
$export PKG_CONFIG_PATH="/usr/local/lib/pkgconfig/"
哈哈哈哈,我终于搞定了这个问题......继续!
这一问题解决后,立马重新尝试安装R包matlib
,原先安装失败的curl
、rio
、car
都成功安装,除了rgl
以外,具体的报错信息如下:

在网上查了半天,都在说需要安装可以提供gl.h
文件的软件,比如说mesa-common-dev
,但是通过查询我使用的服务器上已经安装了相关的软件,把这个文件添加到环境变量中或者重新安装相关也没有作用。
所以我暂时还没有找到解决这一问题的办法,待我再查询一番......ps:安装R包什么的最麻烦啦.......
aaaaa,捣鼓了好久都没有搞定,先不管他了,回头再弄他!
---------------------------手动分割线---------------------------------
- adephylo
同样是使用BiocManager::install()
安装adephylo
,又双叒叕遇到了问题,问题出现在了依赖包sf
上:

解决策略是缺啥安啥:
$apt-file search gdal-config
libgdal-dev: /usr/bin/gdal-config
libgdal-dev: /usr/share/man/man1/gdal-config.1.gz
libgdal-doc: /usr/share/doc/libgdal-doc/gdal/gdal-config.html
$sudo apt-get install libgdal-dev
刚才的报错没了,在安装R包sf
现在又出了另外一个报错:

单独安装sf
查看报错信息`
安装报错:

哎......要疯,捣鼓了一个下午都没把这个sf
安上......
-----------再来个手动分割线-------------
突然觉得自己傻暴了......我是在conda的虚拟环境中安装的R 3.6,却一直没想到用conda去安装R包,昨晚上突然回过味儿之后,一直困扰我的问题就迎刃而解了!
这次我不管什么rgl
和sf
了,直接去安装matlib
和adephylo
:
$conda install r-matlib
$conda install r-adephylo
经过一串的刷屏后,包成功安装!
- 所有的依赖包都已经成功安装,那么最后就是安装
MTA
自然也不会再出现什么问题:

- 来个不成熟的总结
在conda虚拟环境中,若使用以往的方式去安装包或者软件,很容易就会遇到这个库那个软件无法访问的类似问题,我把它归结到conda虚拟环境与系统环境的兼容问题上(可能就是不知道哪里的路径出了啥妖蛾子),最直接的解决方法就是用conda去安装!!省去了恶心的编译过程,当然如果conda没有提供相应的软件或者安装包,那就没的办法了!!
-------------------总结是不成熟的---------
因为服务器昨天恢复至去年10月,我还得重新安装一下相应的包,不过没关系,相信有了先前的经验,这次一定会顺风顺水!
$conda create --prefix=/k11e/pvdisk/fastbase/Users/zhanghuanhuan/projects/conda_env R=3.6
#经检查,目前想要安装MTA,我缺少的包有adephylo、fda、ggplot2、reshape2、toOrdinal和matlib,使用conda install一条命令即可解决问题!
$conda install r-adephylo r-fda r-ggplot2 r-reshape2 r-toOrdinal r-matlib
最后将我提前下载好的MTA package 安装一下就完成拉!

多简单!现在想想之前在那为解决报错抓耳挠腮真是蠢透了......