链接
Github地址和文章的链接:
https://github.com/xiaochuanle/MECAT
https://www.biorxiv.org/node/26657
在MECAT的文章2017年正式发表没过几天的时候就试过安装mecat,当时遇到了一些奇怪的问题,现在想来大概是因为对linux不够熟悉只会复制粘贴代码造成的吧。昨天,2018.1.20,在阿里云服务器和腾讯云的服务器上疯狂尝试了两轮才发现问题所在。还是太年轻。复制粘贴确实能避免很多因为手残导致的问题,但还是要认真审视代码的呢。一味无脑复制人家的代码只会闹这样的低级笑话。
安装的坑
主要是给我这种初学者和粗心的小伙伴们提个醒:
这里的这个位置跟自己电脑的位置大概率来说是不一样的噢,所以别一股脑的就复制进去了,然后安装在了一个奇怪的位置(别问我是怎么知道的……说多了心累……)我直接就安装在了
/home/hanschen/hdf5
这个位置。下面写export的地方别忘了也改一下噢。
quick start的坑
MECAT官网是提供pacbio和nanopore两种测序方式的组装的,也提供了两个示例文件with代码,可以用来测试MECAT软件有木有安装成功。初心是挺好的,但是这个文档写得太不走心了。。这代码迷之错误让我debug了很久。。虽然看懂了之后发现原来就这么简单。。
可以看到第二步里是生成了一个文件叫
corrected_ecoli_filtered
,但是第三步里却需要一个叫
corrected_ecoli_filtered.fasta
的文件,之前一度认为是第二步出了问题,少生成了一个
corrected_ecoli_filtered.fasta
文件导致第三步运行的时候失败,报错说找不到这个
.fasta
文件,就一直在返回去看第二步的结果,总觉得是第二步的问题……今天熬了个夜突然脑子就开窍了。。会不会™是文档写错了?遂less了一下
corrected_ecoli_filtered
,发现这个文件就是fasta格式……
我跟你讲我就是这个表情! ↓↓↓
转换思路开始怀疑文档有误之后,一切都顺利了起来。。第四步的代码也是有一个小错误的,纠正了前面错误的同学应该能很快发现的。。
于是就很顺利的跑完了示例基因组……
C++ 缺少模块的坑
我不知道是我服务器的问题还是MECAT软件的问题,在跑pacbio示例和nanopore的示例的时候都报了个缺少perl模块。
这里倒是顺便学习到了如何安装perl模块之类的linux实用技巧(强行安慰自己)
pacbio缺少的模块:Filesys::Df
第一种办法:自动安装。
自动安装的代码如下。
sudo perl -MCPAN -e shell
cpan>install Filesys::Df
第二种办法:下载源码进行安装。
下载好解压后,cd进目录
perl Makefile.PL
make
make test #当出现“all test ok”时说明测试成功,此步非必须
make install
所以建议大家用第一种安装方式,简单省事儿。
nanopore缺少的模块:ios::in
这个bug我至今没修好……一方面是自动安装找不到这个模块,另一方面是找不到源码……就很懵逼,我也不知道是软件的问题还是我服务器的问题……诶。需要去求个大神帮忙解决一下了……
这一篇大概之后还会继续填坑的,毕竟这个软件相对于falcon和canu的优势还是很大的,毕竟省下了很多的计(nei)算(cun)资(tiao)源和时(qian)间呢。
2018年1月27日09点54分。