https://svn.boost.org/trac/boost/changeset/72773 https://svn.boost.org/trac/boost/changeset/72793 Authorized by Beman. [SVN r72866]
3.0 KiB
The Boost Distribution
This is a sketch of the resulting directory structure:
- |boost_ver-bold||//| .................*The “boost root directory”*
-
index.htm .........*A copy of www.boost.org starts here* boost|//| .........................*All Boost Header files* |precompiled-dir| libs|//| ............*Tests, .cpp*s*, docs, etc., by library* index.html ........*Library documentation starts here* algorithm|//| any|//| array|//| …more libraries… status|//| .........................*Boost-wide test suite* tools|//| ...........*Utilities, e.g. Boost.Build, quickbook, bcp* more|//| ..........................*Policy documents, etc.* doc|//| ...............*A subset of all Boost library docs*
Header Organization
The organization of Boost library headers isn't entirely uniform, but most libraries follow a few patterns:
Some older libraries and most very small libraries place all public headers directly into
boost|/|.Most libraries' public headers live in a subdirectory of
boost|/|, named after the library. For example, you'll find the Python library'sdef.hppheader inSome libraries have an “aggregate header” in
boost|/| that#includes all of the library's other headers. For example, Boost.Python's aggregate header isboost|/|python.hpp.Most libraries place private headers in a subdirectory called
detail|/|, oraux_|/|. Don't expect to find anything you can use in these directories.
It's important to note the following:
The path to the boost root directory (often |default-root|) is sometimes referred to as
$BOOST_ROOTin documentation and mailing lists .To compile anything in Boost, you need a directory containing the
boost|/| subdirectory in your#includepath. |include-paths|Since all of Boost's header files have the
.hppextension, and live in theboost|/| subdirectory of the boost root, your Boost#includedirectives will look like:#include <boost/*whatever*.hpp>
or
#include "boost/*whatever*.hpp"
depending on your preference regarding the use of angle bracket includes. |forward-slashes|
Don't be distracted by the
doc|/| subdirectory; it only contains a subset of the Boost documentation. Start withlibs|/|index.htmlif you're looking for the whole enchilada.