1. 程式人生 > 其它 >下載、安裝、編譯 QTLtools

下載、安裝、編譯 QTLtools

1 下載、安裝、編譯 QTLtools

wget https://qtltools.github.io/qtltools/binaries/QTLtools_1.3.1_source.tar.gz
tar xzvf QTLtools_1.3.1_source.tar.gz
cd qtltools/

在編譯QTLtools之前需要新增library,如下步驟所示:

1.1 新增BOOST_INCBOOST_LIB

先查詢program_options.hpplibboost_program_options.a檔案:

find / -name "program_options.hpp" 2>test
find / -name "libboost_program_options.a" 2>test

對於以上搜尋的結果,假如返回以下路徑:

  • /usr/include/boost/program_options.hpp
  • /path/lib/libboost_program_options.a

則把以上路徑加入到BOOST_INCBOOST_LIB中:

BOOST_INC=/usr/include
BOOST_LIB=/path/lib

1.2 新增RMATH_INCRMATH_LIB

先安裝R:

wget https://cran.r-project.org/src/base/R-3/R-3.2.2.tar.gz
tar xzvf R-3.2.2.tar.gz  
cd R-3.2.2/  
./configure  
cd src/nmath/standalone/  
make

安裝成功後,會生成如下資訊:

假如libRmath.a/path/R-3.2.2/src/nmath/standalone路徑下,則把以下路徑加入到RMATH_INCRMATH_LIB中:

RMATH_INC=/path/R-3.2.2/src/include  
RMATH_LIB=/path/R-3.2.2/src/nmath/standalone

1.3 新增HTSLD_INCHTSLD_LIB

下載、安裝htslib-1.3.1.tar.bz2

wget https://github.com/samtools/htslib/releases/download/1.3.1/htslib-1.3.1.tar.bz2
tar xjvf htslib-1.3.1.tar.bz2  
cd htslib-1.3.1/  
./configure  
make

安裝成功後,顯示如下資訊:

假如檔案libhts.a 位於/path/Libraries/htslib-1.3.1/路徑中,則把該路徑加入到HTSLD_INCHTSLD_LIB中:

HTSLD_INC=/path/Libraries/htslib-1.3.1 
HTSLD_LIB=/path/Libraries/htslib-1.3.1

1.4 將以上路徑全部加入到QTLtools的Makefile檔案中

準備好以上的路徑後,返回QTLtools的路徑。在QTLtools路徑下找到Makefile檔案。

輸入vi Makefile,可以看到這幾個路徑是空的:

現在我們的任務就是將步驟1.1-1.3的路徑加入到這個檔案中,效果如下:

隨後退出、儲存檔案。
輸入如下命令:

make
makeDESTDIR=/install/directoryinstall 
  • 指定安裝路徑為/install/directory(請根據需要設定自己的路徑,不要照搬我的)

編譯成功的話,輸入QTLtools --help會顯示如下介面: