CPAT和CPC2软件安装报错的思考

生信技能树 2022-05-14 23:49


我们的生信入门班和数据挖掘线上直播课程已经有了三年多的历史,培养了一波又一波优秀的生信人才。新一期的生信入门班学员热情高涨,他们富有探索精神,又乐于助人,这是一个在帮助别人的过程中自己也获得进步的例子,令我们非常开心。

下面2021年9月份学员

(生信技能树学员 )


初始之缘:2021年8月18日,在b站生信视频中看到了曾老师的邮箱,一颗冲动的心、一个冒昧的行为,向曾老师发送求要R语言代码的邮件。最惊喜的是1小时后,曾老师发来了源代码及相关视频链接。从此有幸运结识了曾老师的优秀团队,也踏上了学习生信知识的快乐旅途。开始不成体系的自学效果欠佳,就参加9月份的生信入门培训班。小洁老师、小娟老师、卖萌哥等老师不仅教理论和操作,还传授遇到报错的思考及解决方法。

学成之后初步掌握了在服务器上面安装各种各样的Linux相关软件,并且组成一个极简的ngs流程,就是转录组测序数据分析啦。不过我自己的课题是转录组测序数据里面的lncRNA的组装和鉴定,所以超出了马拉松授课内容范围。但是曾老师也确实组织整理了大量相关资料。让我们可以照猫画虎的先跑起来。

下面我分享一个软件安装失败的例子,以及我粗浅的解决方案,希望对大家有帮助!


一、CPATCPC2软件用于评估编码蛋白能力,一般在lncRNA分析中常用,生信技能树已经介绍过不再赘述。

二、CPAT软件安装。一般先网上搜索CPAT的安装信息,了解后进行软件安装。



$ conda activate rna#激活环境
$ pip3 install CPAT#官网安装代码
$ cpat.py -h#打印帮助文档报错:python3.7不存在。网上查询得知python一种软件,而CPAT需要3.7的版本。
$ python -V#查看当前rna环境下python是 2.7.18版本,与cpat.py所需python3.7不符,才报错。
$ conda install python#通过conda安装python。

$ cpat.py -h#再次报错,python3.7不存在。
$ python -V#查看python的版本信息,返回信息:python3.10.4。
$ which python#查看python3.10.4位置。返回信息:/home/data/t060306/miniconda3/envs/rna/bin/python

$ conda uninstall python#卸载不符合要求的python 3.10.4
$ conda install python=3.7#通过conda指定安装3.7版本python
$ cpat.py -h#报错缺pysam组件。查询得知:pysam是python的一种组件,并获得其安装代码。
$ conda install -c bioconda pysam #通过conda安装pysam

$ cpat.py -h #打印帮助文档成功。


感悟:


1、查询信息过程中,过度关注安装代码,而对其他信息不敏感,如:需要python3.5软件。


2、可先行对照官网说明或其他资料,预判系统配置是否匹配软件的需求。


3、精确处理报错,如安装python3.7,在不限定版本时conda默认安装最新版本python,导致继续报错。


4、思考查询后仍不理解的问题,向老师和朋友们请教,他们的一句话就可指点方向,少走弯路。




三、CPC2软件安装。安装前的网上查询信息,得知CPC2软件依赖pythonbiopython

思考:CPC2能否与依赖python3.7CPAT共同安装在同一个环境?

查阅“生信技能树LncRNA的组装和鉴定(下游流程)”文章,得知CPC2安装在有python2.7的独立环境。依赖不同版本python的软件安装在一起导致软件运行报错。官网信息提示:CPC2可手动安装也可通过conda安装,且需提供安装python2.7 biopython1.70


$ 下载网址:http://cpc2.gao-lab.org/data/CPC2-beta.tar.gz
$ ~/biosoft/CPC2-beta.tar.gz#保存文件位置
$ conda create -n python #创建python新环境
$ conda activate python
$ conda install python=2.7
$ conda install biopython=1.70
$根据官网代码手动逐步安装CPC2
$$ vim ~/.bashrc #手动添加后全环境调用软件,添加书写格式不能错。注意:home目录下的“.bashrc”文件不要轻易修改。
export PATH="/home/data/t060306/biosoft/CPC2-beta/bin:$PATH"

$ CPC2.py -h #打印出帮助文档
$ cd lncRNA_project/05.gffcompare/ #进入05.gffcompare文件夹下调用函数
$ python CPC2.py -i ./filter2_transcript_exon.fa -o ./02cpc2/cpc2_result.txt #运行命令,报错CPC2.py不存在。

运行$ CPC2.py -h 命令又能打印出帮助文档。思考:是不是需要绝对路径才可调用CPC2.py 函数。

采用绝对路径成功调用函数“/home/data/t060306/biosoft/CPC2-beta/bin/CPC2.py”。

$python /home/data/t060306/biosoft/CPC2-beta/bin/CPC2.py -i ./filter2_transcript_exon.fa -o ./02cpc2/cpc2_result.txt

思考:CPC2正常使用的情况下,是否需要测试依赖软件python2.7 biopython1.70安装后的运行情况?

测试结果:

$ python –V #显示python版本2.7.15,表示python正常;
$ import Bio #报错,表示biopython异常。Nickier助教老师看过报错信息后,给出了答案。


小结:老师常讲,随着知识的更新,没有不报错的代码和软件,过去的对或许就是现在的错、现在的对或许就是未来的错,遇到报错想一想、搜一搜、试一试、卸载重装、实在不行先放一放、请教他人帮助的处理报错思路。两个软件都做了收手动和conda安装,有路径报错,有依赖软件的报错,有写错文件名的报错等。经过实践,初步掌握了处理报错的方法。

致谢:

感谢曾老师和这个优秀团队带领大家学习生信知识,感谢默默无闻维护服务器等后勤保障的老师们,每每看到微信圈的推文,就是一种触动。感谢Nickier_助教老师及2021生信入门年度交流群的老师们热情交流帮助。欢迎更多的小伙伴乘坐卖萌哥的“三架马车”、聆听着小娟老师转录组和小洁老师R语言的美妙声,畅想在生信的山花烂漫中。

一名生信小白之愚见,不当之处,请指正。

文末友情宣传

强烈建议你推荐给身边的博士后以及年轻生物学PI,多一点数据认知,让他们的科研上一个台阶:


推荐阅读