zoukankan      html  css  js  c++  java
  • R包MetaboAnalystR安装指南(Linux环境非root)

    前言

    这是代谢组学数据分析的一个R包,包括用于代谢组学数据分析、可视化和功能注释等众多功能。最近有同事在集群中搭建蛋白和代谢流程,安装这个包出现了问题,于是我折腾了一上午。

    这个包的介绍在:https://github.com/xia-lab/MetaboAnalystR,安装确实还比较复杂,依赖的东西太多太多。废话不多说,记录下安装历程。

    安装过程

    首先最好是已经安装了自己的R版本(非root),比如我的是R-3.5.2。然后进入R中,依照文档给的顺序依次安装:

    第一步:安装依赖包

    install.packages("pacman")
    
    library(pacman)
    
    pacman::p_load(Rserve, ellipse, scatterplot3d, Cairo, randomForest, caTools, e1071, som, impute, pcaMethods, RJSONIO, ROCR, globaltest, GlobalAncova, Rgraphviz, preprocessCore, genefilter, pheatmap, SSPA, sva, Rcpp, pROC, data.table, limma, car, fitdistrplus, lars, Hmisc, magrittr, methods, xtable, pls, caret, lattice, igraph, gplots, KEGGgraph, reshape, RColorBrewer, tibble, siggenes, plotly, xcms, CAMERA, fgsea, MSnbase, BiocParallel, metap, reshape2, scales)
    

    这里很耗时,慢慢等吧。也不会盯着它看哪一步有么有报错。

    第二步:安装困难

    # Step 1: Install devtools
    install.packages("devtools")
    library(devtools)
    
    ### For users with devtools > v2.0.0 ###
    
    # Step 2: Install MetaboAnalystR without documentation
    devtools::install_github("xia-lab/MetaboAnalystR", build = TRUE, build_opts = c("--no-resave-data", "--no-manual", "--no-build-vignettes"))
    

    继续慢慢等吧,等着报错吧。。。果不其然,出现以下错误:
    image.png
    说没有安装xcms, CAMERA, MSnbase等R包,那就一个个装呗。

    又出现一堆错误,总而言之,缺少的那些包都依赖于这个ncdf4这个R包,那就继续装吧。
    image.png
    直接装报错,按它提示,用R CMD INSTALL --configure-args="--with-nc-config=/home/joe/bin/nc-config" ncdf4也不行,原因是没有安装nc-config,Linux环境中which nc-config,是找不到的,说明我的环境中确实没有安装这玩意。

    于是我去查了下这究竟是个什么玩意。NetCDF全称为network Common Data Format,中文译法为“网络通用数据格式”,这是一种文件格式的标准。netcdf文件开始的目的是用于存储气象科学中的数据,现在已经成为许多数据采集软件的生成文件的格式。

    这其实是一个库,包括C,C++,Java等等,下载网址:https://www.unidata.ucar.edu/downloads/netcdf/index.jsp
    文件很小,好像还不太好下下来,我搭了个梯子到美国才下下来,下的是这一个:
    image.png

    经验告诉我们,非root直接在Linux中源码安装没那么顺利:

    cd netcdf-c-4.7.0
    ./configure --prefix=/your/path/
    make check
    make install
    

    用不到三板斧,安装就已经报错了,具体什么的我找不到了,大概就是缺少什么什么库。

    网上查了些资料,说是netcdf依赖zlibhdf5,前者我已经安装了,指定路径就行,后者也是一个用于存储和分发科学数据的一种自我描述、多对象文件格式的软件。ok,那就先安装hdf5吧(https://support.hdfgroup.org/HDF5/),我装的是最新的这个:
    image.png

    三板斧继续:

    cd hdf5-1.10.5
    ./configure --with-zlib=/zlib/path --prefix=/hdf5/path -enable-fortran -enable-cxx 
    make check
    make install
    
    #PS. hdf5也是依赖zlib库的,所以必须要指定--with-zlib=/zlib/path,否则会报错相关库文件找不到。
    

    成功安装后,接下来安装netcdf:

    CPPFLAGS=-I/hdf5/path/include LDFLAGS=-L/hdf5/path/lib  ./configure --prefix=/netcdf/path --enable-netcdf-4 --enable-largefile --disable-dap
    make check
    make install
    
    #PS. 必须指定CPPFLAGS=-I/hdf5/path//include LDFLAGS=-L/hdf5/path/lib,否则报错提示相关文件找不到
    

    这两个软件都要装很久很久,尤其是check那一步,需要耐心,最后终于搞定!

    安装成功后,安装路径下会有4个文件夹,如下图,忙活这么多,就只为了这个nc-config文件。我们只是临时用一下这个破玩意,就不添加到环境变量了。
    image.png

    第三步:正式安装
    直接`install.packages("ncdf4")是不行的(我也不知道为什么,因为指定不了nc-config吧),于是下载源码安装:
    image.png

    R CMD INSTALL ncdf4_1.13.tar.gz --configure-args="--with-nc-config=/netcdf/path/bin/nc-config"
    

    至此,xcms、CAMERA、MSnbase等依赖的ncdf4包安装成功,下面就畅通无阻,将缺少的依赖包全部装上。最后

    devtools::install_github("xia-lab/MetaboAnalystR", build = TRUE, build_opts = c("--no-resave-data", "--no-manual", "--no-build-vignettes"))
    

    image.png

    安装成功!

    Ref:https://blog.csdn.net/laomai/article/details/1740747
    https://blog.csdn.net/Mrhiuser/article/details/69603826
    https://www.jianshu.com/p/90ecc0580bd1

  • 相关阅读:
    说一下spring bean的生命周期
    oracle是怎么分页的
    Zookeeper和eureka之间的区别?
    说一下zookeeper和eureka之间的区别?
    假如一张表有一亿条数据,你怎样提高查询效率
    equals和==的区别
    谈谈你对oracle序列的理解
    你们项目中权限是怎样做的?
    讲解一下spring cloud常见组件的作用?
    说一下你们项目中实体类都是怎样重写hashcode()和equals()的
  • 原文地址:https://www.cnblogs.com/jessepeng/p/11201528.html
Copyright © 2011-2022 走看看