-
Notifications
You must be signed in to change notification settings - Fork 251
Building from source : configure options explained
Packages ngs-sdk
, ncbi-vdb
, sra-tools
have some unusual configure options.
Here we will try to explain them.
ncbi-vdb
package depends on ngs-sdk
, sra-tools
– on ngs-sdk
and ncbi-vdb
.
ncbi-vdb
should be able to find include files of ngs-sdk
, sra-tools
- ngs-sdk
package and sources and build results of ncbi-vdb
.
By default build output / build results of ngs
/ncbi-vdb
/sra-tools
is created in ~/ncbi-outdir/
.
You can change it by using --build-prefix
, but then - you should tell sra-tools
where to find build results of ncbi-vdb
.
Default recommended locations of source files of ngs
/ncbi-vdb
/sra-tools
is:
ngs
/ncbi-vdb
/sra-tools
packages should be located in subdirectories named ngs
, ncbi-vdb
, sra-tools
inside of the same directory.
Usually it is done automatically by running: git clone https://github.com/ncbi/ngs.git ; git clone https://github.com/ncbi/ncbi-vdb.git ; git clone https://github.com/ncbi/sra-tools.git
Then you should see the following:
$ ls
ncbi-vdb ngs sra-tools
$ ls ngs
CHANGES.md LICENSE Makefile ngs-bam ngs-java ngs-python ngs-sdk …
$ ls ncbi-vdb
build configure libs setup CHANGES.md interfaces LICENSE Makefile test …
$ ls sra-tools
build configure Makefile setup test CHANGES.md LICENSE shared tools …
If you create repositories as described above and run ./configure
and make
in each of ngs
/ncbi-vdb
/sra-tools
subdirectories – each of them should find all required files from ngs
/ncbi-vdb
.
If location of ngs-sdk
/ncbi-vdb
or their build output directory is not standard (see above), you need to specify them:
Examples:
-
ngs-sdk
is in~/1/ngs-1.3.0/ngs-sdk
-
ncbi-vdb
is in~/2/ncbi-vdb-2.8.0
-
sra-tools
in~/3/sra-tools.2.8.0
ncbi-vdb/configure
requires to find header files of ngs-sdk
:
~/2/ncbi-vdb-2.8.0/configure --with-ngs-sdk-prefix=~/1/ngs-1.3.0/ngs-sdk
or
cd ~/1/ngs-1.3.0/ngs-sdk && ./configure --prefix=~/ngs-sdk && make default install
cd ~/2/ncbi-vdb-2.8.0 && ./configure --with-ngs-sdk-prefix=~/ngs-sdk