美文网首页单细胞转录组
MacOS下安装velocyto.R

MacOS下安装velocyto.R

作者: sglwc | 来源:发表于2023-02-02 21:26 被阅读0次

拟时序分析是单细胞测序高级分析之一,其中引用量最多的一是Monocle,其次就是velocyto。velocyto分为python版本和R版本,python版本用于分析得到上游loom文件,而R版本则用于下游分析及可视化。不得不说,velocyto.R是我安装的所有R包中最为复杂的,花了一下午去研究各个教程及github中各位大神的解答,终于在我的Mac M1中成功加载。以下内容参考了多种来源资料,如有侵权请联系我删除,谢谢。

velocyto.R的安装语法

首先我参考了生信技能树的一篇帖子《在Mac或者Linux上面安装velocyto.R的成功经验分享》,代码很简单:

remotes::install_github("velocyto-team/velocyto.R")

由于没有配置相应的语言环境,运行这段代码会出现报错,提示缺少boost文件系统

#ld: library not found for -lboost_filesystem

boost安装

因此我们继续依照生信技能树的帖子的方法安装boost,即在Mac的终端中运行:

brew install boost

如果之前没有安装过Homebrew的话,这段代码在终端中是运行不了的,因此需要先安装Homebrew。关于Homebrew的简介、安装、卸载,看这篇帖子足够https://www.jianshu.com/p/de6f1d2d37bf。安装的代码如下,在终端中运行:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

gcc编译器安装与文件路径修改

安装完Homebrew后,可以按照之前的代码安装boost,然后我们再继续生信技能树的帖子,在终端中运行以下代码:

new_gcc=/usr/local/gfortran/lib/gcc/x86_64-apple-darwin18/8.2.0
sudo mkdir -p  $new_gcc 
sudo cp -r  /usr/local/Cellar/gcc/11.2.0_3/lib/gcc/11/*  $new_gcc

这段代码的大致意思是,在/usr/local/这个文件夹中创建一个gcc的目录,然后再将另一个文件夹中gcc的内容拷贝进来。但是我找了半天都没找到gcc在哪,后面搜索才知道gcc是一个编译器,需要安装···代码如下:

brew install gcc

在终端运行结束后,你会发现安装的gcc版本是12.2.0,同时你还会发现gcc并不在usr/local/这个文件夹中,而是在opt/homebrew/Cellar/中,因此上述的文件路径需要改一下:

new_gcc=/usr/local/gfortran/lib/gcc/x86_64-apple-darwin18/8.2.0
sudo mkdir -p  $new_gcc 
sudo cp -r  /opt/homebrew/Cellar/gcc/12.2.0/lib/gcc/12/*  $new_gcc

至此,第一个帖子的大致内容到此,目的主要是将gcc编译器拷贝到velocyto.R调用的固定位置,再次运行:

remotes::install_github("velocyto-team/velocyto.R")

结果仍然报错,报错依然是boost环境没有搭建好。

修改Makevars文件

接着,去github中找答案https://github.com/velocyto-team/velocyto.R/issues/167,截图如下:

image.png

boost我们已经安装完成,记住它的版本号为1.76.0,在后续修改中有用。

紧接着在github中下载velocyto.R的包,然后解压,Makevars文件就藏在其中的src文件夹中,打开后进行修改R包调用boost的路径,注意修改其中的版本号:

CXX_STD = CXX11
PKG_CXXFLAGS= $(SHLIB_OPENMP_CXXFLAGS)
PKG_CFLAGS=$(SHLIB_OPENMP_CFLAGS)
PKG_LIBS=-lboost_filesystem -lboost_system   -lstdc++ $(LAPACK_LIBS) $(BLAS_LIBS)  $(SHLIB_OPENMP_CFLAGS) $(FLIBS) -L /opt/homebrew/Cellar/boost/1.76.0/lib/

修改完成后,如果按照帖子中的“install_github("ssun1116/velocyto.R")”是无法完成安装的,我们应该将修改后的文件重新打包,然后在本地安装:

devtools::install_local("/Users/myapple/Downloads/velocyto.R-master.zip") 

最后

library(velocyto.R)
image.png

相关文章

网友评论

    本文标题:MacOS下安装velocyto.R

    本文链接:https://www.haomeiwen.com/subject/ivrghdtx.html