美文网首页生物信息学与算法
利用conda提供的库进行编译snp-pileup

利用conda提供的库进行编译snp-pileup

作者: 王诗翔 | 来源:发表于2018-12-24 12:58 被阅读12次

facets包提供的C文件需要额外进行编译,要用到htslib库

因为计算平台账号没有root权限,所以直接利用第一种方法肯定是不可行的。

尝试第二种方式:

$ g++ -std=c++11 -I/public/home/liuxs/anaconda3/envs/biosoft/include/htslib/ snp-pileup.cpp -L/public/home/liuxs/anaconda3/envs/biosoft/lib -lhts  -Wl,-rpath=/public/home/liuxs/anaconda3/envs/biosoft/lib -o snp-pileup 
In file included from snp-pileup.cpp:1:0:
snp-pileup.h:9:10: fatal error: htslib/bgzf.h: No such file or directory
 #include "htslib/bgzf.h"
          ^~~~~~~~~~~~~~~
compilation terminated.

从报错结果看,肯定是我没有正确指定htslib路径,所以编译器找不到。但我是按照说明书操作的啊?仔细查看conda提供的库文件目录结构,它其实和作者预想用户装在本地的不一样!

既然是conda提供的方式,我们就按照conda的思维就好了。

$ g++ -std=c++11 -I/public/home/liuxs/anaconda3/envs/biosoft/include/ snp-pileup.cpp -L/public/home/liuxs/anaconda3/envs/biosoft/lib -lhts  -Wl,-rpath=/public/home/liuxs/anaconda3/envs/biosoft/lib -o snp-pileup 

这里只是去除了-I/public/home/liuxs/anaconda3/envs/biosoft/include/末尾的htslib,运行编译成功!

相关文章

网友评论

    本文标题:利用conda提供的库进行编译snp-pileup

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