Installation Requirements
=========================

NOTE: This is a developer release of the Biomolecule Tool Kit (BTK) core
      library.  Please be aware that the library is still under development,
      and that features, interfaces and implementation details can and will
      change in future releases.
	
The BTK is a standards-compliant C++ library.  It makes use of many
features of the C++ standard, and as such, you will need a relatively
modern C++ compiler and implementation of the C++ standard library.
In particular, the following platforms and compilers are known to work
with the BTK:

Linux: g++ 3.3.x (esp as packaged with Fedora Core 1) 
Mac OS X: g++ 3.3 (esp. as packaged with OS X 10.3), g++ 4.0

These represent our primary development platforms, and are
well-supported.  Other reasonably current C++ compilers may also work,
but have not been evaluated.

The build process is dependent upon the GNU build tools, including GNU
make, GNU autoconf and GNU automake.

The BTK makes use of components in the Boost C++ library, freely
available at http://www.boost.org.  Boost version 1.33 (the most
current at the time of this release) was used for development.  Other
versions of the boost library may also work, but have not been tested.


Build Process
=============

To build this library, unpack the distribution tarball to a directory:

tar -zxvf btk_core.tar.gz

and change to the 'btk_core' directory that is created.  Once there,
use the standard GNU autoconf/automake build procedure:

./configure 
make 
make install (optional)

By default, the library will install to the /usr/local/ directory
tree.  As with other GNU packages, you can change the final install
location by using the "--prefix" option to configure:

./configure --prefix=/your/install/dir
make
make install

If the configure script fails to find your boost library installation
(it will look in the directory specified by the BOOST_ROOT environment
variable), use the "--boost-root" option to explicitly specify its
location:

./configure --boost-root=/your/boost/dir
make
make install

If all goes well, a static library will be created, and this library
will be used to build several test applications (found in the
"btk_core/tests" directory), as well as several example applications
(found in the "btk_core/examples" directory).


Known Problems
==============

* The version of g++ distributed with Mac OS X 10.3.x (g++ version 3.3
20030304) contains a bug in its ABI implementation that causes
compilation problems in code that uses the boost uBLAS library.  To
work around this problem, either add -fabi-version=0 to the flags
passed to g++, or uncomment the SET_GCC_ABI_VERSION macro in the
btk_core/configure.ac file, and regenerate the configure script using
GNU autoconf.


Documentation
=============

Currently, there is little formal documentation for the library.
However, the Doxygen code documentation tool (http://doxygen.org) may
be used to generate library documentation directly from the C++
source.  An example of this documentation is available on the BTK
website (http://btk.sf.net).  To generate your own copy of this
documentation, use the configuration file ("doxyfile") found in
the btk_core/docs/doxygen directory:

cd btk_core/docs/doxygen && doxygen

You will need to generate and install this documentation manually, as
it is not currently part of the build system.


Getting Help
============

If you need assistance installing or using this library, please use
the BTK project forums and/or mailing lists, available at
http://sourceforge.net/projects/btk

Thanks,
The BTK developers
