HTSlib is an implementation of a unified C library for accessing common file formats, such as SAM, CRAM and VCF, used for high-throughput sequencing data, and is the core library used by samtools and bcftools. HTSlib only depends on zlib. It is known to be compatible with gcc, g++ and clang.
HTSlib implements a generalized BAM index, with file extension .csi
(coordinate-sorted index). The HTSlib file reader first looks for the new index
and then for the old if the new index is absent.
This project also includes the popular tabix indexer, which indexes both .tbi
and .csi
formats, and the bgzip compression utility.
See INSTALL for complete details. Release tarballs contain generated files that have not been committed to this repository, so building the code from a Git repository requires extra steps:
autoheader # If using configure, generate the header template...
autoconf # ...and configure script (or use autoreconf to do both)
./configure # Optional but recommended, for choosing extra functionality
make
make install