Augustus安裝問題 (3.0 以上都適用)

augustus 3.2 (3.3) 編譯失敗linux

緣由是依賴boost庫,並且須要bamtools,從而致使編譯失敗ios

報錯1:ip

$ makeci

mkdir -p bin
cd src && make
make[1]: Entering directory '/home/bio/augustus/augustus-3.2.3/src'
g++ -c -Wall -Wno-sign-compare -Wno-strict-overflow -ansi -pedantic -O3   -DZIPINPUT -o genbank.o genbank.cc -I../include
In file included from genbank.cc:15:0:
../include/genbank.hh:26:48: fatal error: boost/iostreams/filtering_stream.hpp: No such file or directory
 #include <boost/iostreams/filtering_stream.hpp>
                                                ^
compilation terminated.
Makefile:71: recipe for target 'genbank.o' failed
make[1]: *** [genbank.o] Error 1
make[1]: Leaving directory '/home/bio/augustus/augustus-3.2.3/src'
Makefile:7: recipe for target 'all' failedmake: *** [all] Error 2get

解決方法1:io

修改src/Makefile編譯

將 LIBS    = -lboost_iostreams 改爲 LIBS    = -lboost_iostreams -L/Path_to_boost/libstream

將 INCLS   = -I../include 改爲 INCLS   = -I../include -I/Path_to_boost/include配置

解決了boost問題,可是又來了新的報錯file

報錯2:

Makefile:29: recipe for target 'bam2hints.o' failed
make[2]: *** [bam2hints.o] Error 1

解決方法2:

修改 auxprogs/bam2hints/Makefile

將 INCLUDES = /usr/include/bamtools 改爲 INCLUDES = /Path_to_bamtools/include

將 LIBS = -lbamtools -lz 改爲 LIBS = /Path_to_bamtools/lib/libbamtools.a -lz

解決了bam2hints又來了新報錯。。。

報錯3:

Makefile:34: recipe for target 'filterBam.o' failed
make[3]: *** [filterBam.o] Error 1

解決方法3:

修改 auxprogs/filterBam/src/Makefile

將 BAMTOOLS = /usr/include/bamtools 改爲 BAMTOOLS = /Path_to_bamtools/include

將 LIBS = -lbamtools -lz 改爲 LIBS = /Path_to_bamtools/lib/libbamtools.a -lz

 

Finally succeeded ~~

注意事項:

1. bamtools最好下載2.5.0如下版本的,推薦2.4.1

2. 最後記得要把boost的庫放入linux的配置中

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/Path_to_bamtools/include:/Path_to_bamtools/lib

相關文章
相關標籤/搜索