0
|
1 Basic Installation
|
|
2 ==================
|
|
3
|
|
4 To build and install HTSlib, 'cd' to the htslib-1.x directory containing
|
|
5 the package's source and type the following commands:
|
|
6
|
|
7 ./configure
|
|
8 make
|
|
9 make install
|
|
10
|
|
11 The './configure' command checks your build environment and allows various
|
|
12 optional functionality to be enabled (see Configuration below). If you
|
|
13 don't want to select any optional functionality, you may wish to omit
|
|
14 configure and just type 'make; make install' as for previous versions
|
|
15 of HTSlib. However if the build fails you should run './configure' as
|
|
16 it can diagnose the common reasons for build failures.
|
|
17
|
|
18 The 'make' command builds the HTSlib library and and various useful
|
|
19 utilities: bgzip, htsfile, and tabix. If compilation fails you should
|
|
20 run './configure' as it can diagnose problems with your build environment
|
|
21 that cause build failures.
|
|
22
|
|
23 The 'make install' command installs the libraries, library header files,
|
|
24 utilities, several manual pages, and a pkgconfig file to /usr/local.
|
|
25 The installation location can be changed by configuring with --prefix=DIR
|
|
26 or via 'make prefix=DIR install' (see Installation Locations below).
|
|
27
|
|
28
|
|
29 Configuration
|
|
30 =============
|
|
31
|
|
32 By default, './configure' examines your build environment, checking for
|
|
33 requirements such as the zlib development files, and arranges for a plain
|
|
34 HTSlib build. The following configure options can be used to enable
|
|
35 various features and specify further optional external requirements:
|
|
36
|
|
37 --with-irods[=DIR]
|
|
38 Specifies the location of the iRODS client library to use to enable
|
|
39 access to data objects stored in iRODS (<http://irods.org/>) via file
|
|
40 paths like 'irods:DATAOBJ'. DIR is the base of an iRODS source tree
|
|
41 such that the library is present as DIR/lib/core/obj/libRodsAPI.* and
|
|
42 headers are present under DIR/lib/api/include and so on. If '=DIR' is
|
|
43 omitted, $IRODS_HOME will be used as a base directory.
|
|
44
|
|
45 The configure script also accepts the usual options and environment variables
|
|
46 for tuning installation locations and compilers: type './configure --help'
|
|
47 for details. For example,
|
|
48
|
|
49 ./configure CC=icc --prefix=/opt/icc-compiled
|
|
50
|
|
51 would specify that HTSlib is to be built with icc and installed into bin,
|
|
52 lib, etc subdirectories under /opt/icc-compiled.
|
|
53
|
|
54
|
|
55 Installation Locations
|
|
56 ======================
|
|
57
|
|
58 By default, 'make install' installs HTSlib libraries under /usr/local/lib,
|
|
59 HTSlib header files under /usr/local/include, utility programs under
|
|
60 /usr/local/bin, etc. (To be precise, the header files are installed within
|
|
61 a fixed 'htslib' subdirectory under the specified .../include location.)
|
|
62
|
|
63 You can specify a different location to install HTSlib by configuring
|
|
64 with --prefix=DIR or specify locations for particular parts of HTSlib by
|
|
65 configuring with --libdir=DIR and so on. Type './configure --help' for
|
|
66 the full list of such install directory options.
|
|
67
|
|
68 Alternatively you can specify different locations at install time by
|
|
69 typing 'make prefix=DIR install' or 'make libdir=DIR install' and so on.
|
|
70 Consult the list of prefix/exec_prefix/etc variables near the top of the
|
|
71 Makefile for the full list of such variables that can be overridden.
|
|
72
|
|
73 You can also specify a staging area by typing 'make DESTDIR=DIR install',
|
|
74 possibly in conjunction with other --prefix or prefix=DIR settings.
|
|
75 For example,
|
|
76
|
|
77 make DESTDIR=/tmp/staging prefix=/opt
|
|
78
|
|
79 would install into bin, lib, etc subdirectories under /tmp/staging/opt.
|