“...one of the most highly regarded and expertly designed C++ library projects in the world.” Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

BoostCon `07

T-Minus 32 days and counting... Have you registered yet?

See BoostCon `07 for details

Welcome to Boost.org!

Boost provides free peer-reviewed portable C++ source libraries.

We emphasize libraries that work well with the C++ Standard Library. Boost libraries are intended to be widely useful, and usable across a broad spectrum of applications. The Boost license encourages both commercial and non-commercial use.

We aim to establish "existing practice" and provide reference implementations so that Boost libraries are suitable for eventual standardization. Ten Boost libraries are already included in the C++ Standards Committee's Library Technical Report ( TR1) as a step toward becoming part of a future C++ Standard. More Boost libraries are proposed for the upcoming TR2.

Getting started: Boost works on almost any modern operating system, including UNIX and Windows variants. Follow the Getting Started Guide to download and install Boost. Popular Linux and Unix distributions such as Fedora, Debian, and NetBSD include pre-built Boost packages. Boost may also already be available on your organization's internal web server.

Background: The Background Information page has introductory material to help those educating their organization about Boost.

Participation

Although Boost was begun by members of the C++ Standards Committee Library Working Group, participation has expanded to include thousands of programmers from the C++ community at large.

If you are interested in participating in Boost, please join our main developers mailing list. Discussions are highly technical, and list members are encouraged to participate in formal reviews of proposed libraries. There is also a users mailing list, and several project specific lists.

Both the main Boost developers list and the users list are also accessible as newsgroups.

Latest News

March 26, 2007 - Quantitave Units Review Begins

  • View the announcement here.

March 12, 2007 - Intrusive Containers Review Begins

  • View the announcement here.

March 3, 2007 - Bimap Accepted

  • View the announcement here.

February 19, 2007 - Accumulators Accepted

  • View the announcement here.

February 15, 2007 - Bimap Review Begins

  • View the announcement here.

January 29, 2007 - Accumulators Review Begins

  • View the announcement here.

November 28, 2006 - Function Types Accepted

  • View the announcement here.

November 7, 2006 - Generic Image Library Accepted

  • View the announcement here.

November 6, 2006 - Function Types Re-Review Begins

  • View the announcement here.

October 19, 2006 - An overview of Boost participation in Google Summer of Code™ 2006

  • Read here about the first experience of Boost in this open source initiative sponsored by Google.

October 7, 2006 - Pimpl_ptr Library Rejected

  • View the announcement here.

October 5, 2006 - Generic Image Library Review Begins

  • View the announcement here.

September 21, 2006 - Message Passing Accepted

  • View the announcement here.

September 15, 2006 - BoostCon 2007

  • The inaugural Boost conference will be held May 14-18, 2007, in Aspen Colorado. See our preliminary announcement page for more information.

September 6, 2006 - Message Passing Review Begins

  • View the announcement here.

June 19, 2006 - Physical Quantities System Rejected

  • View the announcement here.

June 6, 2006 - Fusion Library Accepted

  • View the announcement here.

May 31, 2006 - Physical Quantities System Review Begins

  • View the announcement here.

May 20, 2006 - Property Tree Accepted

  • View the announcement here.

May 15, 2006 - Pimpl Pointer Review Begins

  • View the announcement here.

May 1, 2006 - Fusion Review Begins

  • View the announcement here.

April 28, 2006 Boost Selected as Mentoring Organization for Google Summer of Code

  • View the announcement here.

April 18, 2006 - Property Tree Review Begins

  • View the announcement here.

April 12, 2006 - Promotion Traits Accepted

  • View the announcement here.

April 1, 2006 - Promotion Traits Mini-Review Begins

  • View the announcement here.

March 30, 2006 - Review Wizard's Report

March 22, 2006 - Asynchronous I/O Library Accepted

  • View the announcement here.

February 17, 2006 - Shared Memory Library Accepted

  • View the announcement here.

February 6, 2006 - Shared Memory Library Review Begins

  • View the announcement here.

February 5, 2006 - Fixed String Library Rejected

  • View the announcement here.

January 19, 2006 - Fixed String Library Review Begins

  • View the announcement here.

January 19, 2006 - Review Wizard's Report

December 5, 2005 - Version 1.33.1

Updated Libraries

  • Any Library: Cast to reference types introduced in 1.33.0 is now documented on any_cast documentation page.
  • Config Library: Don't undef BOOST_LIB_TOOLSET after use.
  • Boost.Python:
    • The build now assumes Python 2.4 by default, rather than 2.2
    • Support Python that's built without Unicode support
    • Support for wrapping classes with overloaded address-of (&) operators
  • Smart Pointer Library: Fixed problems under Metrowerks CodeWarrior on PowerPC (Mac OS X) with inlining on, GNU GCC on PowerPC 64.
  • Regex Library: Fixed the supplied makefiles, and other small compiler specific changes. Refer to the regex history page for more information on these and other small changes.
  • Iostreams Library: Improved the interface for accessing a chain's components, added is_open members to the file and file descriptor devices, fixed memory-mapped files on Windows, and made minor changes to the documentation.
  • Functional/Hash Library: Fixed the points example.
  • Multi-index Containers Library: Fixed a problem with multithreaded code, and other minor changes. Refer to the library release notes for further details.
  • Graph Library:
    • Fixed a problem with the relaxed heap on x86 Linux (fixes bug in dijkstra_shortest_paths).
    • Fixed problems with cuthill_mckee_ordering and king_ordering producing no results.
    • Added color_map parameter to dijkstra_shortest_paths.
  • Signals Library: Fixed problems with the use of Signals across shared library boundaries.
  • Thread library: read_write_mutex has been removed due to problems with deadlocks.
  • Wave library (V1.2.1) Fixed a couple of problems, refer to the change log for further details.

Supported Compilers

Boost is tested on a wide range of compilers and platforms. Since Boost libraries rely on modern C++ features not available in all compilers, not all Boost libraries will work with every compiler. The following compilers and platforms have been extensively tested with Boost, although many other compilers and platforms will work as well. For more information, see the regression test results.

New for this release: Support for building with the newest STLport-5.0 was added. The support includes building with MinGW Runtime 3.8 plus STLport-5.0 improved to support wide character operations. Apple GCC 4.0, HP Tru64 C++, and Microsoft Visual C++ 8.0 are supported platforms. We have added an experimental autoconf-like configure script for Unix-like systems: run configure --help for more information.

  • Apple GCC 3.3, 4.0 on Mac OS X.
  • Borland C++ 5.6.4 on Windows.
  • GNU C++ 2.95.3 (with and without STLport), 3.2.x., 3.3.x, 3.4.x, 4.0.x on Windows, Linux and Solaris.
  • HP C++ for Tru64 UNIX 7.1.
  • Intel C++ 8.1, 9.0 on Windows, Linux.
  • Metrowerks CodeWarrior 8.3, 9.4, 9.5 on Mac OS X and Windows.
  • Microsoft Visual C++ 6.0 (sp5, with and without STLport), 7.0, 7.1, 8.0. Note: Boost does not support the non-standard "Safe" C++ Library shipping with Visual C++ 8.0, which may result in many spurious warnings from Boost headers and other standards-conforming C++ code. To suppress these warnings, define the macro _SCL_SECURE_NO_DEPRECATE.

Acknowledgements

Medieval Mr. Gregor Douglas Gregor managed this release.

A great number of people contributed their time and expertise to make this release possible. Special thanks go to Aleksey Gurtovoy and Misha Bergal, who managed to keep the regression testing system working throughout the release process; David Abrahams, Beman Dawes, Aleksey Gurtovoy, Bronek Kozicki, Rene Rivera and Jonathan Turkanis for greatly improving the quality of this release; Rene Rivera for the new Boost web page design; and Zoltan "cad" Juhasz for the new Boost logo.