2024-12-19 perl模块 YAML:XS 安装踩坑记录

最近(也不算是最近),BRAKER注释已经更新到3了,难免会介意自己还在使用1.9版本。旧版本没什么毛病但是还是想要用最新版。大佬们对于braker的使用已经介绍的很清楚了,我的理解是braker算是一个denovo注释的软件但是可以结合已有的蛋白和转录组数据进行构建数据库。所以听起来蛮靠谱的。本身有很多模式,并不是说一定要有转录组RNA的比对bam才能运行,没有bam的话可以使用orthodb-clades的蛋白数据进行参考。
一个使用蛋白运行braker的脚本示例:

perl /PATH/Software/BRAKER-master/scripts/braker.pl --threads 48 --species=Hb18  --genome=//PATH/genome.fa.mod.EDTA.final/genome.fa.mod.masked \
     --useexisting --softmasking --prot_seq=/PATH/Software/orthodb-clades-master/clades/Viridiplantae.fa \
     --gff3 --BAMTOOLS_PATH /PATHSoftware/Miniconda/envs/augustus/bin 

但是在我使用example中的数据运行命令时:

perl ../scripts/braker.pl --genome genome.fa  --hints=./RNAseq.hints --threads 1 -skipGeneMark-ET  --busco_lineage=lineage_odb10 --BAMTOOLS_PATH /PATH/Software/Miniconda/envs/augustus/bin --AUGUSTUS_BIN_PATH /PATH/Software/Augustus/bin --AUGUSTUS_SCRIPTS_PATH /PATH/Software/Augustus/scripts/ --prot_seq proteins.fa --GENEMARK_PATH=/PATH/Software/gmes_linux_64

会报错类似gmetp.pl的YAML:XS没有安装。但是我使用系统已有perl进行

perl Makefile.PL
make
make install

等命令时,会显示没有权限,但是用自己conda安装的perl时,make会报错

/bin/sh: /tmp/build/80754af9/perl_1527832170752/_build_env/bin/x86_64-conda_cos6-linux-gnu-gcc: No such file or directory
make[1]: *** [Makefile:340: api.o] Error 127
make[1]: Leaving directory '/jdfsbjcas1/ST_BJ/P21H28400N0232/chengxin2/01.Software/YAML-LibYAML-v0.902.0/LibYAML'
make: *** [Makefile:498: subdirs] Error 2

解决这个其实很简单。把Makefile中还有LibYAML/Makefile中的所有tmp相关的路径全都删掉 变成这样

AR = ar
CC = cc
CCCDLFLAGS = -fPIC
CCDLFLAGS = -Wl,-E
DLEXT = so
DLSRC = dl_dlopen.xs
EXE_EXT = 
FULL_AR = /bin/ar
LD = cc
LDDLFLAGS = -shared -O2 -L/usr/local/lib -fstack-protector-strong
LDFLAGS =  -fstack-protector-strong -L/usr/local/lib
LIBC = libc-2.17.so
LIB_EXT = .a
OBJ_EXT = .o
OSNAME = linux
OSVERS = 3.10.0-862.el7.x86_64
RANLIB = :
SITELIBEXP = /share/app/perl/5.32.0/lib/site_perl/5.32.0
SITEARCHEXP = /share/app/perl/5.32.0/lib/site_perl/5.32.0/x86_64-linux
SO = so
VENDORARCHEXP = 
VENDORLIBEXP = 

并不需要什么gcc或者ar或者sysrooot的路径 tmp相关的全部删除就可以make成功了。

算是一个小小坑吧,之前安装perl模块使用的是cpan 或者cpanm,但是这两天网络不好,使用源码安装确实会快一些,之前也有过类似的问题,现在解决了,以后安装也会很快。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容