From 6001d4fda7bd3d9613d15d56708d945821304b69 Mon Sep 17 00:00:00 2001 From: Douglas Gregor Date: Thu, 8 Dec 2005 03:23:02 +0000 Subject: [PATCH] Merged from Version_1_33_1 [SVN r31949] --- bugs.htm | 2 +- getting_started.html | 2588 +++++++++++++++++++++++++----------------- mailing_lists.htm | 12 +- test_policy.htm | 9 +- version_history.html | 607 +++++++++- whos_using/using.qbk | 4 +- 6 files changed, 2158 insertions(+), 1064 deletions(-) diff --git a/bugs.htm b/bugs.htm index b897f11..7c1ce18 100644 --- a/bugs.htm +++ b/bugs.htm @@ -54,7 +54,7 @@
  • If you have a proposed patch to the code, post it along with your bug - report, preferably in the context diffs format (diff -c); + report, preferably in the unified diffs format (cvs diff -du); if you can, send a patch relative to the current CVS state. A canonical example of creating a patch file follows (let's assume that you've found a bug in the file intentional_bug.hpp:
    diff --git a/getting_started.html b/getting_started.html index 6d74694..2f59118 100644 --- a/getting_started.html +++ b/getting_started.html @@ -1,1054 +1,1554 @@ + - - Getting Started - - - - - - - - - - - -
    boost.png (6897 bytes) - - - - -
    - - - - -
    -

    Home
    - . Libraries
    - . People
    - . FAQ
    - . More

    -
    -
    -
    -

    Getting Started

    - -

    Introduction

    -

    These instructions are intended to help you get started using the Boost - Libraries. This walks you through getting, building, and installing the - libraries. To summarize these are the steps to get Boost built and installed:

    -
      -
    1. - Download Boost. -
    2. - Install Boost.Jam. -
    3. - Configure your compiler toolset. -
    4. - Go to Boost distribution directory. -
    5. - Build and install. -
    6. -
    -

    Download

    - - - - - -
    1The Boost Libraries are distributed through the SourceForge file distribution - system. Click here to - download releases from SourceForge. And - unpack the release to a convenient location.
    -

    The Boost release includes all of the libraries and other material from the web - site. It is available in ZIP, TAR.GZ, - and TAR.BZ2 formats. Past releases are also available.

    - It is also possible to download current snapshots of work-in-progress from - Boost's CVS repository. -

    .zip file

    - The .zip format is widely supported by both free decoders and commercial - compress/archive utilities. If you don't already have a .zip file decoder, - download one from the Info-ZIP web site, - which supplies versions for many operating systems. -

    Text file line endings in the .zip file are as supplied by each library - developer.  This works fine for Windows, but not for Unix/Linux.  The - .tar.gz and .tar.bz2 files supply Unix/Linux friendly line endings.

    -

    .tar.gz and .tar.bz2 files

    -

    The .tar.gz format is widely supported on Unix/Linux platforms. Some Windows - compress/archive utilities can read the format as well.  Because the gzip - format compresses the archive as a single file rather than compressing each - file individually, the .tar.gz file is smaller that the .zip file.

    -

    The .tar.bz2 format is becoming widely available on Unix/Linux platforms and is - built into many tar utilities. This format differs for the .tar.gz format in - the compression used, which is considerably better and therefore creates - smaller files.

    -

    Text file line endings in the .tar.gz and .tar.bz2 files have been converted to - newlines for ease of use on Unix/Linux platforms.

    -

    Boost CVS Repository

    -

    All Boost files, including the entire distribution tree including web site HTML - is maintained in a CVS repository. Command line, GUI, or browser access is - available.

    -

    Boost CVS access via command line or graphical clients

    - For those who have CVS clients installed, the libraries are also available from - the public Boost CVS - repository. Free command line clients (often already installed on - Linux/Unix systems) are available for many systems, and free GUI clients are - available for Windows, Mac, and other systems. -

    See the much improved CVS - documentation (Section F) from SourceForge, which includes links to the - home pages for various GUI and command line clients.

    -

    The general procedure for command-line clients is something like this:

    -
    cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/boost login
    - [Hit <return> when it asks for a password]
    - cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/boost checkout - boost
    - cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/boost logout
    - Read the manual for your CVS client for further information. + + Getting Started + + + + + + -

    This access is read-only; if you are a library author and - wish to have CVS write access, please contact one of the moderators. - For confirmation of write access, check the sourceforge - boost project member list, available via a link on this page. -

    + + + + -

    Boost CVS access via web Browser

    - For access to the CVS archive from any modern web browser, you can also use the - web browser  interface.  Try one of the color diffs to see how - a file has changed over time. Note: this interface is only suitable for - viewing individual files and their revision histories. -

    Documentation generated from BoostBook - in CVS

    -

    Some of the Boost documentation is generated from - BoostBook XML source stored in the CVS repository, and will not appear - directly in the CVS tree as readable HTML. View a nightly build of the - generated HTML on the - Nightly Generated Documentation page. Where generated HTML is missing - from the CVS tree, an attempt has been made to include redirection to this - nightly build, but if you are away from an internet connection you may want to - download the generated documentation archive from the aforementioned page so - you can browse those documents offline.

    -

    Preparation

    -

    The recommended way to build and install the Boost Libraries is to use - Boost.Build, the Boost Build system. The rest of these instructions - explain that use, but it is up to you to use this method, or not. Note that - some of the libraries also include non Boost.Build makefiles and/or project - files. But all include the needed files for building with Boost.Build.

    -
    +
    - - - - -
    2The build system uses Boost.Jam, - an extension of the Perforce Jam - portable make replacement. The recommended way to get Boost.Jam if you - are using a Boost distribution is to - download a prebuilt executable from SourceForge. If a - prebuilt executable is not provided for your platform or you are using Boost's - sources in an unreleased state, it may be necessary to - build bjam from sources included in the Boost source tree. To - install Boost.Jam, copy the bjam executable to a location accessible - in your PATH.
    -

    Configuring the tools

    -

    Before using Boost.Build you will need to configure the compiler tools you are - using. The build system's toolsets are designed to work in either of two ways:

    -
      -
    1. - The user sets up all of the environment for each toolset he wants to use in the - normal way. For example, for Microsoft VC++, ...VC98/Bin or .../VC7/Bin is in - the PATH environment variable, VCVARS32.BAT or VSVARS32.BAT has been invoked, - etc. For Metrowerks CodeWarrior, cwenv.bat or equivalent has been called and - ...Other Metrowerks Tools/Command Line Tools is in the path. Many Unix - operating systems come preconfigured this way and require no user intervention.
      -
      -
    2. - The user doesn't want his environment cluttered with settings or has - nonstandard installations for some of his tools. Instead, he or she sets - variables which point to the toolset installation directories, either in the - command shell environment or on the bjam command-line. These - variables are used by the build system to locate the tools and invoke the - necessary setup. To set the variables on the bjam command-line you use - the "-s" option. For example:
      -
      - bjam "-sGCC_ROOT_DIRECTORY=/usr/local/gcc-3.3.2"
      -
      - Some variables, like the toolset TOOLS variable, can accept multiple - values separated by spaces. Others, like the path above, can contain spaces. - For such circumstances you should use quotes appropriate for your command - interpreter.
      -
    3. -
    -

    Supported Toolsets

    - - - - - -
    3The following toolsets are supported by Boost.Build. For information about - configuring each toolset, click its name in the leftmost column.
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    TOOLS NameDescription
    borlandBorland C++
    comoComeau C++ compiler front-end for - non-Windows platforms
    como-win32Comeau C++ compiler front-end for - Windows, using Microsoft Visual C++as - a back-end.
    cwMetrowerks CodeWarrior Pro 6.x, 7.x, - 8.x, and 9.x command-line tools
    darwinApple Darwin OS hosted GNU - GCC
    dmcDigital Mars C++.
    dmc-stlportDigital Mars C++, using the - STLport standard library implementation
    edgEdison Design Group compiler front-end - (evaluation version)
    gccGNU GCC on Unix and - Cygwin.
    gcc-stlportGNU GCC on Unix and - Cygwin, using the STLport standard - library implementation
    gcc-nocygwinGNU GCC Cygwin command line compiler tools running in "no-cygwin" mode - (produces commercially redistributable objects)
    intel-linuxIntel C++ for - Linux
    intel-win32Intel C++ for - Windows using the Dinkumware standard library in the Intel-required - Microsoft Visual C++ 6 or 7 - installation
    kccKAI C++
    kylixBorland C++ for Linux (Kylix).
    mingwGNU GCC and associated tools in MinGW configuration - (produces commercially redistributable objects)
    mingw-stlportGNU GCC and associated tools in MinGW configuration - (produces commercially redistributable objects), using the - STLport standard library implementation
    mipsproSGI MIPSpro - C and C++
    msvcMicrosoft Visual C++ version - 6 command-line tools. NOTE; For version 7.x (the .NET series) use the vc7 or - vc-7_1 toolsets below.
    msvc-stlportMicrosoft Visual C++ version - 6 command-line tools, using the STLport standard - library implementation. NOTE; For version 7.x (the .NET series) use the - vc7-stlport or vc-7_1-stlport toolsets below.
    sunproSunPRO C++ compiler
    tru64cxxCompaq C++ for Tru64 UNIX - (versions prior to 6.5)
    tru64cxx65Compaq C++ Version 6.5 - for Tru64 UNIX
    vacppIBM Visual Age C++ command-line - tools
    vc7Microsoft Visual C++ command-line - tools from Visual Studio .NET.
    vc7-stlportMicrosoft Visual C++ command-line - tools from Visual Studio .NET + STLPort.
    vc-7_1Microsoft Visual C++ command-line - tools from Visual Studio .NET 2003.
    vc-7_1-stlportMicrosoft Visual C++ command-line - tools from Visual Studio .NET 2003 + STLPort.
    -

    Build and Install

    -

    The common build and install process is driven by the top-level build file (Jamfile).

    - - - + +
    4 + + - -
    -

    First you need to change to the directory where you have the Boost distribution - you downloaded. For example:

    -
    -

    chdir boost-1.31.0

    -
    + + + + +
    +

    Home
    + . Libraries
    + . People
    + . FAQ
    + . More

    +
    -

    The default build and install attempts to build all available libraries and - install to default locations the libraries and Boost header files. On Unix - systems the default install location is "/usr/local", and on Windows - systems the default is "C:\Boost". Within those directories libraries - are installed to the "lib" subdirectory, and headers to an "include/boost-1_31" - subdirectory, the version will reflect the distribution you are installing.

    - - - - - -
    5Invoke the build system, specifying the toolset(s) you - wish to use, to build and install. For example for GNU/GCC.
    -

    bjam "-sTOOLS=gcc" install

    -
    -

    Or if you are interested only in the built libraries you can have them built - and collected to a common directory without installation.

    -
    -

    bjam "-sTOOLS=gcc" stage

    -
    -
    -

    The build and install system can be controlled through a set of options similar - in style to GNU configure options. The options allow you to, among other - things, change the install location, disable building of libraries, etc. You - can see a summary of the available options by invoking "bjam --help". - The full invocation takes the form:

    -
    -

    bjam [options...] [install|stage]

    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - Action 
    noneOnly builds the Boost libraries. This lets you do - the first part of what the install action normally does without - copying the built libraries to the install location.
    installBuilds and installs Boost libraries and headers.
    stageBuilds the Boost libraries and copies them into a - common directory.
    - Option 
    --helpShows a short summary of the options and syntax of - the command.
    -sTOOLS=<toolsets>The list of tools to compile with. Usually only one - is needed.
    --prefix=PREFIXInstall architecture independent files here.
    - Default; C:\Boost on Win32.
    - Default; /usr/local on Unix. Linux, etc.
    --exec-prefix=EPREFIXInstall architecture dependent files here.
    - Default; PREFIX
    --libdir=DIRInstall libraries here.
    - Default; EPREFIX/lib
    --includedir=DIRInstall source headers here. The Boost headers are - installed in a version specific "boost-<version>" subdirectory - in this directory.
    - Default; PREFIX/include
    --builddir=DIRBuild in this location instead of building within - the distribution tree. This moves where the sources for the libraries are - compiled to before they are installed. Recommended!
    --stagedir=DIRWhen staging only, with the "stage" action, - copy to the given location.
    - Default; ./stage
    --without-<library>Do not build, stage, or install the specified - library.
    --with-<library>Build, stage, or install the specified library. This - changes the default from trying to build all possible libraries, to only - building the specified libraries.
    --with-python-root[=PYTHON_ROOT]Build Boost.Python libraries with the Python devel - packages located at PYTHON_ROOT. The Boost.Python libraries are built - only if the build can find the Python development package at this location.
    - Default; C:\tools\python on Win32.
    - Default; /usr/local on Unix, Linux, etc.
    - Default; /usr on Cygwin.
    --with-pydebugBuild Boost.Python libraries using the Python debug - runtime. This builds an additional set of libraries for use with the debug - version of Python. The regular versions of the Boost.Python libraries are also - built.
    -sHAVE_ICU=1Build Boost.Regex libraries with Unicode support - provided by the - ICU libraries. ICU must have been built with the same - compiler that you are using to build Boost, and must be installed into - your compiler's include and library search paths. See - the Boost.Regex - installation documentation for more information.
    -sICU_PATH=pathBuild Boost.Regex libraries with Unicode support - provided by the - ICU libraries. ICU must have been built with the same - compiler that you are using to build Boost, and must have been built - (or installed to) directory path. - For example if you configured ICU with --prefix=/usr/local/icu/3.3, then use - -sICU_PATH=/usr/local/icu/3.3. See - the Boost.Regex - installation documentation for more information.
    -sNO_COMPRESSION=1Build Boost.Iostreams without support for the compression - filters which rely on the non-Boost libraries zlib and libbz2. If you use Windows, - this option is enabled by default. If you use UNIX, the compression filters will likely - work with no configuration, so this option should not be necessary. For full details see - Boost.Iostreams Installation. -
    -

    There are additional options as supported by - Boost.Build and Boost.Jam. - Of the additional options perhaps the most imporant is "-sBUILD=<features/variants>" - which lets you override what is built by default. The "<features/variants>" - value is a list, separated by spaces, of build requests. Features take the form - of a tag and a value or values. And variants are single symbolic names for a - collection of features. For example the default is to request "debug release - <runtime-link>static/dynamic <threading>single/multi", in - which "debug" and "release" are variants, and the rest - features with two values each.

    -

    If you have some feedback about the build and install process please drop us a - line at the Boost.Build mailing list. - We are particularly interested if it works for your platform and if it there is - anything that you feel could be done better.

    -

    Results

    -

    The results of building come in to forms: static libraries, and dynamic - libraries. Depending on the platform the libraries produced have different - names to accommodate the platform requirements. For a single Boost library the - build with the default will produce eight different libraries. For example - building the Boost.Datetime library on Unix type system it would produce:

    -
      -
    1. - libboost_date_time-gcc-d-1_31.so -
    2. - libboost_date_time-gcc-mt-d-1_31.so -
    3. - libboost_date_time-gcc-1_31.so -
    4. - libboost_date_time-gcc-mt-1_31.so -
    5. - libboost_date_time-gcc-d-1_31.a -
    6. - libboost_date_time-gcc-mt-d-1_31.a -
    7. - libboost_date_time-gcc-1_31.a -
    8. - libboost_date_time-gcc-mt-1_31.a
      -
    9. -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - - - -
    - · Library Prefix
    -
     
    lib - - - -
    - · Library Name
    -
    boost_date_time - - - -
    - · Toolset
    -
    -gcc - - - -
    - · Threading
    -
    -mt - - - -
    - · Runtime
    -
    -d - - - -
    - · Boost Version
    -
    -1_31 - - - -
    - · Library Type
    -
    .a 
    -

    Library Prefix

    -

    The "lib" prefix on the libraries is a requirement on many platforms, like - Unix, and on others like GCC running on Windows. The prefix is therefore added - to all libraries on Unix type systems, and to static libraries on Windows. That - is on Unix shared libraries and static libraries (object archives) are named - respectively:

    +
    + + + + +

    Getting Started

    + + +
  • + +
  • Build and Install
  • + +
  • Results
  • + +
  • Automatic Linking on Windows
  • + +
  • Additional Steps
  • + + +

    Introduction

    + +

    These instructions are intended to help you get started using the Boost + Libraries. This walks you through getting, building, and installing the + libraries. To summarize these are the steps to get Boost built and + installed:

    + +
      +
    1. Download Boost.
    2. + +
    3. Install Boost.Jam.
    4. + +
    5. Configure your compiler toolset.
    6. + +
    7. Go to Boost distribution directory.
    8. + +
    9. Build and install.
    10. +
    + +

    Download

    + + + + + + + +
    + 1The Boost Libraries are distributed through the SourceForge file + distribution system. Click here to + download releases from SourceForge. And + unpack the release to a convenient location.
    + +

    The Boost release includes all of the libraries and other material from + the web site. It is available in ZIP, TAR.GZ, and TAR.BZ2 formats. Past + releases are also available.

    It is also possible to download current + snapshots of work-in-progress from Boost's CVS + repository. + +

    .zip file

    The .zip format is widely + supported by both free decoders and commercial compress/archive utilities. + If you don't already have a .zip file decoder, download one from the + Info-ZIP web site, which supplies + versions for many operating systems. + +

    Text file line endings in the .zip file are as supplied by each library + developer.  This works fine for Windows, but not for Unix/Linux.  + The .tar.gz and .tar.bz2 files supply Unix/Linux friendly line endings.

    + +

    .tar.gz and .tar.bz2 files

    + +

    The .tar.gz format is widely supported on Unix/Linux platforms. Some + Windows compress/archive utilities can read the format as well.  + Because the gzip format compresses the archive as a single file rather than + compressing each file individually, the .tar.gz file is smaller that the + .zip file.

    + +

    The .tar.bz2 format is becoming widely available on Unix/Linux platforms + and is built into many tar utilities. This format differs for the .tar.gz + format in the compression used, which is considerably better and therefore + creates smaller files.

    + +

    Text file line endings in the .tar.gz and .tar.bz2 files have been + converted to newlines for ease of use on Unix/Linux platforms.

    + +

    Boost CVS Repository

    + +

    All Boost files, including the entire distribution tree including web + site HTML is maintained in a CVS repository. Command line, GUI, or browser + access is available.

    + +

    Boost CVS access via command line or graphical clients

    For those + who have CVS clients installed, the libraries are also available from the + public Boost CVS + repository. Free command line clients (often already installed on + Linux/Unix systems) are available for many systems, and free GUI clients + are available for Windows, Mac, and other systems. + +

    See the much improved CVS documentation (Section + F) from SourceForge, which includes links to the home pages for various GUI + and command line clients.

    + +

    The general procedure for command-line clients is something like + this:

    + +
    + cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/boost + login
    + [Hit <return> when it asks for a password]
    + cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/boost + checkout boost
    + cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/boost + logout +
    Read the manual for your CVS client for further information. + +

    This access is read-only; if you are a library author and wish to have + CVS write access, please contact one of the moderators.

    + +

    Boost CVS access via web Browser

    For access to the CVS archive from any modern web + browser, you can also use the web + browser  interface.  Try one of the color diffs to see how a + file has changed over time. Note: this interface is only suitable + for viewing individual files and their revision histories. + +

    Documentation generated from + BoostBook in CVS

    + +

    Some of the Boost documentation is generated from BoostBook XML source stored in the CVS + repository, and will not appear directly in the CVS tree as readable HTML. + View a nightly build of the generated HTML on the + Nightly Generated Documentation page. Where generated HTML is missing + from the CVS tree, an attempt has been made to include redirection to this + nightly build, but if you are away from an internet connection you may want + to download the generated documentation archive from the aforementioned + page so you can browse those documents offline.

    + +

    Preparation

    + +

    The recommended way to build and install the Boost Libraries is to use + Boost.Build, the Boost + Build system. The rest of these instructions explain that use, but it is up + to you to use this method, or not. Note that some of the libraries also + include non Boost.Build makefiles and/or project files. But all include the + needed files for building with Boost.Build.

    + + + + + + + +
    + 2The build system uses Boost.Jam, an extension of the + Perforce Jam + portable make replacement. The recommended way to get Boost.Jam + if you are using a Boost distribution is to + download a prebuilt executable from SourceForge. If a + prebuilt executable is not provided for your platform or you are using + Boost's sources in an unreleased state, it may be necessary to build bjam + from sources included in the Boost source tree. To install + Boost.Jam, copy the bjam executable to a location accessible + in your PATH.
    + +

    Configuring the tools

    + +

    Before using Boost.Build you will need to configure the compiler tools + you are using. The build system's toolsets are designed to work in either + of two ways:

    + +
      +
    1. The user sets up all of the environment for each toolset he wants to + use in the normal way. For example, for Microsoft VC++, ...VC98/Bin or + .../VC7/Bin is in the PATH environment variable, VCVARS32.BAT or + VSVARS32.BAT has been invoked, etc. For Metrowerks CodeWarrior, cwenv.bat + or equivalent has been called and ...Other Metrowerks Tools/Command Line + Tools is in the path. Many Unix operating systems come preconfigured this + way and require no user intervention.
      +
    2. + +
    3. The user doesn't want his environment cluttered with settings or has + nonstandard installations for some of his tools. Instead, he or she sets + variables which point to the toolset installation directories, either in + the command shell environment or on the bjam command-line. + These variables are used by the build system to locate the tools and + invoke the necessary setup. To set the variables on the bjam + command-line you use the "-s" option. For example:
      +
      + bjam "-sGCC_ROOT_DIRECTORY=/usr/local/gcc-3.3.2"
      +
      + Some variables, like the toolset TOOLS variable, can accept + multiple values separated by spaces. Others, like the path above, can + contain spaces. For such circumstances you should use quotes appropriate + for your command interpreter.
    4. +
    + +

    Supported Toolsets

    + + + + + + + +
    + 3The following toolsets are supported by Boost.Build. For + information about configuring each toolset, + click its name in the leftmost column.

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    TOOLS NameDescription
    borlandBorland C++
    comoComeau C++ compiler + front-end for non-Windows platforms
    como-win32Comeau C++ compiler + front-end for Windows, using Microsoft Visual C++as a back-end.
    cwMetrowerks CodeWarrior Pro + 6.x, 7.x, 8.x, and 9.x command-line tools
    darwinApple Darwin OS hosted GNU GCC
    dmcDigital Mars C++.
    dmc-stlportDigital Mars C++, using + the STLport standard library + implementation
    edgEdison Design Group compiler + front-end (evaluation version)
    gccGNU GCC on Unix and Cygwin.
    gcc-stlportGNU GCC on Unix and Cygwin, using the STLport standard library + implementation
    gcc-nocygwinGNU GCC Cygwin command line compiler tools running in "no-cygwin" + mode (produces commercially redistributable objects)
    intel-linuxIntel C++ for + Linux
    intel-win32Intel C++ for + Windows using the Dinkumware standard library in the Intel-required + Microsoft Visual C++ 6 + or 7 installation
    kccKAI C++
    kylixBorland C++ for Linux + (Kylix).
    mingwGNU GCC and associated tools in MinGW configuration (produces commercially + redistributable objects)
    mingw-stlportGNU GCC and associated tools in MinGW configuration (produces commercially + redistributable objects), using the STLport standard library + implementation
    mipsproSGI MIPSpro + C and C++
    msvcMicrosoft Visual + C++ version 6 command-line tools. NOTE; For version 7.x (the .NET + series) use the vc7, vc-7_1, or vc-8_0 toolsets below.
    msvc-stlportMicrosoft Visual + C++ version 6 command-line tools, using the STLport standard library implementation. + NOTE; For version 7.x (the .NET series) use the vc7-stlport or + vc-7_1-stlport toolsets below.
    sunproSunPRO C++ + compiler
    tru64cxxCompaq C++ for + Tru64 UNIX (versions prior to 6.5)
    tru64cxx65Compaq C++ + Version 6.5 for Tru64 UNIX
    vacppIBM Visual Age + C++ command-line tools
    vc7Microsoft Visual + C++ command-line tools from Visual Studio .NET.
    vc7-stlportMicrosoft Visual + C++ command-line tools from Visual Studio .NET + STLPort.
    vc-7_1Microsoft Visual + C++ command-line tools from Visual Studio .NET 2003.
    vc-7_1-stlportMicrosoft Visual + C++ command-line tools from Visual Studio .NET 2003 + STLPort.
    vc-8_0Microsoft Visual + C++ command-line tools from Visual Studio .NET 2005.
    + +

    Build and Install

    + +

    The common build and install process is driven by the top-level build + file (Jamfile).

    + + + + + + + +
    + 4 +

    First you need to change to the directory where you have the Boost + distribution you downloaded. For example:

    + +
    +

    chdir boost-1.31.0

    +
    +
    + +

    The default build and install attempts to build all available libraries + and install to default locations the libraries and Boost header files. On + Unix systems the default install location is "/usr/local", and on + Windows systems the default is "C:\Boost". Within those + directories libraries are installed to the "lib" subdirectory, and + headers to an "include/boost-1_31" subdirectory, the version will + reflect the distribution you are installing.

    + + + + + + + +
    + 5 + Invoke the build system, specifying the toolset(s) you wish to use, to build and install. For + example for GNU/GCC. + +
    +

    bjam "-sTOOLS=gcc" install

    +
    + +

    Or if you are interested only in the built libraries you can have + them built and collected to a common directory without + installation.

    + +
    +

    bjam "-sTOOLS=gcc" stage

    +
    +
    + +

    The build and install system can be controlled through a set of options + similar in style to GNU configure options. The options allow you to, among + other things, change the install location, disable building of libraries, + etc. You can see a summary of the available options by invoking "bjam + --help". The full invocation takes the form:

    + +
    +

    bjam [options...] [install|stage]

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Action 
    noneOnly builds the Boost libraries. This + lets you do the first part of what the install action normally + does without copying the built libraries to the install location.
    installBuilds and installs Boost libraries and + headers.
    stageBuilds the Boost libraries and copies + them into a common directory.
    Option 
    --helpShows a short summary of the options and + syntax of the command.
    + -sTOOLS=<toolsets>The list of tools to compile with. + Usually only one is needed.
    --prefix=PREFIXInstall architecture independent files + here.
    + Default; C:\Boost on Win32.
    + Default; /usr/local on Unix. Linux, etc.
    + --exec-prefix=EPREFIXInstall architecture dependent files + here.
    + Default; PREFIX
    --libdir=DIRInstall libraries here.
    + Default; EPREFIX/lib
    --includedir=DIRInstall source headers here. The Boost + headers are installed in a version specific + "boost-<version>" subdirectory in this directory.
    + Default; PREFIX/include
    --builddir=DIRBuild in this location instead of + building within the distribution tree. This moves where the sources for + the libraries are compiled to before they are installed. + Recommended!
    --stagedir=DIRWhen staging only, with the + "stage" action, copy to the given location.
    + Default; ./stage
    + --without-<library>Do not build, stage, or install the + specified library.
    + --with-<library>Build, stage, or install the specified + library. This changes the default from trying to build all possible + libraries, to only building the specified libraries.
    + --with-python-root[=PYTHON_ROOT]Build Boost.Python libraries with the + Python devel packages located at PYTHON_ROOT. The Boost.Python + libraries are built only if the build can find the Python development + package at this location.
    + Default; C:\Python24 on Win32.
    + Default; /usr on Unix, Linux, Cygwin, etc.
    + --with-python-version[=2.4]Build Boost.Python libraries with the + Python version indicated.
    + Default; 2.4.
    --with-pydebugBuild Boost.Python libraries using the + Python debug runtime. This builds an additional set of libraries for + use with the debug version of Python. The regular versions of the + Boost.Python libraries are also built.
    -sHAVE_ICU=1Build Boost.Regex libraries with Unicode + support provided by the ICU + libraries. ICU must have been built with the same compiler that you + are using to build Boost, and must be installed into your compiler's + include and library search paths. See the Boost.Regex installation + documentation for more information.
    + -sICU_PATH=pathBuild Boost.Regex libraries with Unicode + support provided by the ICU + libraries. ICU must have been built with the same compiler that you + are using to build Boost, and must have been built (or installed to) + directory path. For example if you configured ICU with + --prefix=/usr/local/icu/3.3, then use + -sICU_PATH=/usr/local/icu/3.3. See the Boost.Regex installation + documentation for more information.
    -sNO_COMPRESSION=1Build Boost.Iostreams without support for + the compression filters which rely on the non-Boost libraries zlib and + libbz2. If you use Windows, this option is enabled by default. If you + use UNIX, the compression filters will likely work with no + configuration, so this option should not be necessary. For full details + see Boost.Iostreams + Installation.
    + +

    There are additional options as supported by Boost.Build and Boost.Jam. Of the additional + options perhaps the most imporant is "-sBUILD=<features/variants>" + which lets you override what is built by default. The + "<features/variants>" value is a list, separated by spaces, + of build requests. Features take the form of a tag and a value or values. + And variants are single symbolic names for a collection of features. For + example the default is to request "debug release + <runtime-link>static/dynamic <threading>single/multi", in + which "debug" and "release" are variants, and the rest + features with two values each.

    + +

    If you have some feedback about the build and install process please + drop us a line at the Boost.Build + mailing list. We are particularly interested if it works for your + platform and if it there is anything that you feel could be done + better.

    + +

    Results

    + +

    The results of building come in to forms: static libraries, and dynamic + libraries. Depending on the platform the libraries produced have different + names to accommodate the platform requirements. For a single Boost library + the build with the default will produce eight different libraries. For + example building the Boost.Datetime library on Unix type system it would + produce:

    + +
      +
    1. libboost_date_time-gcc-d-1_31.so
    2. + +
    3. libboost_date_time-gcc-mt-d-1_31.so
    4. + +
    5. libboost_date_time-gcc-1_31.so
    6. + +
    7. libboost_date_time-gcc-mt-1_31.so
    8. + +
    9. libboost_date_time-gcc-d-1_31.a
    10. + +
    11. libboost_date_time-gcc-mt-d-1_31.a
    12. + +
    13. libboost_date_time-gcc-1_31.a
    14. + +
    15. libboost_date_time-gcc-mt-1_31.a
    16. +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + + +
    · Library Prefix
    +
     
    lib + + + + +
    · Library Name
    +
    boost_date_time + + + + +
    · Toolset
    +
    -gcc + + + + +
    · Threading
    +
    -mt + + + + +
    · Runtime
    +
    -d + + + + +
    · Boost Version
    +
    -1_31 + + + + +
    · Library Type
    +
    .a 
    + +

    Library Prefix

    + +

    The "lib" prefix on the libraries is a requirement on many platforms, + like Unix, and on others like GCC running on Windows. The prefix is + therefore added to all libraries on Unix type systems, and to static + libraries on Windows. That is on Unix shared libraries and static libraries + (object archives) are named respectively:

    + + + +

    On Windows shared libraries do not have the prefix to differentiate the + import libraries from static libraries. Consequently on Windows the + libraries are named:

    + + + + + + + + + + + + + + + + + + + +
    *.dllDynamic library version.
    *.libImport library for the dll.
    lib*.libStatic library version.

    +
    + +

    Library Name

    + +

    For Boost libraries the name has the "boost_" prefix to + separate them from other libraries in your system.

    + +

    Toolset

    + +

    The toolset name is an abbreviation based on the compiler you are + building with. The abbreviation is composed of a short, 2 to 4 characters, + tag for the compiler and a version number of the compiler's major and minor + revision (if available). For example if your toolset is + "gcc-3_2_3" the toolset tag would be "gcc32". The toolset + abbreviations used are as follows:

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    TOOLS NameAbbreviation
    borlandbcb
    comocomo
    como-win32como
    cwcw
    darwinosx
    dmcdmc
    dmc-stlportdmc
    edgedg
    gccgcc
    gcc-stlportgcc
    gcc-nocygwingcc
    intel-linuxil
    intel-win32iw
    kcckcc
    kylixbck
    mingwmgw
    mingw-stlportmgw
    mipspromp
    msvcvc
    msvc-stlportvc
    sunprosw
    tru64cxxtru
    tru64cxx65tru
    vacppxlc
    vc7vc
    vc7-stlportvc
    vc-7_1vc
    vc-7_1-stlportvc
    vc-8_0vc
    OthersThe first part of the toolset name.
    + +

    Threading

    + +

    This tag indicates if the library is compiled with threading support. If + threading is enabled "-mt" is added, otherwise nothing is + added.

    + +

    Runtime

    + +

    This specifies the type of runtime the library was compiled against, and + the type of code that is compiled. More commonly this encodes the ABI + variation used in the code. For each feature of the runtime system and code + compilation option a single letter is added to this tag.

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    KeyFeature
    sStatic link to runtime.
    gDebug runtime.
    yDebug Python system.
    dDebug enabled code.
    pSTLport runtime, instead of the vendor toolset runtime.
    nSTLport runtime using the "native" IO streams instead of the + STLport IO streams.
    + +

    For example if you compile debug code for STLport using native IO + streams, and statically link to the debug runtime the tag would be: + "-sgdpn".

    + +

    Boost Version

    + +

    This is the short label for the version of the Boost Libraries. The + major and minor version numbers are taken together separated by an + underscore. For example version 1.31.0 would be tagged as "-1_31". + For patch versions the patch number is also included, for example a version + of 1.31.1 would be tagged as "-1_31_1".

    + +

    Library Type

    + +

    The extension holds the type of library. This follows the platform + requirements. On Windows this is ".dll" for shared libraries, and + ".lib" for static libraries including import libraries. On Unix + this is ".a" for static libraries (archives), and ".so" for shared + libraries. For toolsets that support it in Unix they will also have a full + version extension (for example ".so.1.31.0") with a symbolic link + for the un-versioned library.

    + +

    Automatic Linking on Windows

    + +

    For most Boost libraries that have separate source, the correct build + variant is linked against automatically when you include one of that + library's header files.  For this feature to work, your compiler must + support the #pragma comment(lib, name) feature (Microsoft + Visual C++, Intel C++, Metrowerks C++ , and Borland C++ all support + this).

    + +

    If you are linking to a dynamic runtime, then you can choose to link to + either a static or a dynamic Boost library, the default is to do a static + link.  You can alter this for a specific library whatever by + defining BOOST_WHATEVER_DYN_LINK to force Boost library whatever + to be linked dynamically.  Alternatively you can force all Boost + libraries to dynamic link by defining BOOST_ALL_DYN_LINK.

    + +

    This feature can be disabled for Boost library whatever by + defining BOOST_WHATEVER_NO_LIB, or for all of Boost by defining + BOOST_ALL_NO_LIB.

    + +

    If you want to observe which libraries are being linked against then + defining BOOST_LIB_DIAGNOSTIC will cause the auto-linking code to emit a + #pragma message each time a library is selected for + linking.

    + +

    There are some Boost libraries (Boost.Test is one one special case), + where automatic linking is not supported for technical reasons: please + consult the documentation for each of the libraries you are using for more + information, and the Boost.Config + documentation for more information on configuration macros.  The + following table shows the current supported configurations, (Boost + libraries not listed here consist of headers only):

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    LibraryStatic LinkDynamic LinkDefault linkageAutomatic library selectionComments
    Date-TimeYesYesstaticYes 
    FilesystemYes +

    Yes

    +
    staticYes 
    GraphYesNostaticNoThe separate Graph library source is needed only when reading an AT&T graphviz + file.
    IostreamsYes +

    Yes

    +
    staticYes 
    Program OptionsYesYesstaticYes 
    PythonYesYesdynamicNoSince all Python extensions are DLL's it makes sense to dynamic + link to the Boost Python library by default (static linking is + only really an option if you are embedding python).
    RegexYesYesstaticYes 
    SerializationYesYesstaticYes 
    SignalsYesYesstaticYes 
    TestYesNostaticNoWhich library you link to depends upon which program entry point + you define, rather than which Boost.Test features you use.
    ThreadPartialYesstatic (Visual C++), otherwise dynamicYesFor technical reasons static linking is supported on only one + Windows compiler (Visual C++).
    WaveYesYesstaticYes 

    +
    + +

    Additional + Steps

    + +

    Depending on your platform and configuration you may need to perform + some additional configuration to get Boost to build and install.

    + + +
    + +

    Revised $Date$

    + +

    Copyright © Rene Rivera 2003.
    + Copyright © Jens Maurer 2001.
    + Copyright © John Maddock 2004.

    + +

    Distributed under the Boost Software License, Version 1.0. (See + accompanying file LICENSE_1_0.txt or copy + at www.boost.org/LICENSE_1_0.txt)

    + - - - diff --git a/mailing_lists.htm b/mailing_lists.htm index 3b96917..e997be7 100644 --- a/mailing_lists.htm +++ b/mailing_lists.htm @@ -199,10 +199,8 @@ div.admonition p.admonition-title { is available at news://news.gmane.org/gmane.comp.lib.boost.devel. -

    For this list's members only, preliminary libraries under discussion are - available from the YahooGroups Files section (formerly - called the "vault").

    +

    Preliminary libraries under discussion are available from the Vault.

    Archives for Boost developers list

    @@ -310,7 +308,7 @@ div.admonition p.admonition-title {

    Boost.Documentation list

    The SourceForge mailing list for the Boost Documentation System is located Boost Documentation System is located here. GMane provides NNTP @@ -364,7 +362,9 @@ div.admonition p.admonition-title {

    Revised - 01 October, 2005

    + 04 December, 2005

    Copyright Beman Dawes and David Abrahams 2001-2005

    diff --git a/test_policy.htm b/test_policy.htm index 30cd9f3..ee56674 100644 --- a/test_policy.htm +++ b/test_policy.htm @@ -25,10 +25,9 @@ Every experienced programmer knows that means each library must be tested agains and then tested again (regression tested) every time a change is made and before every release. 

    "Quality assurance based on a wide range of targeted tests" as one -of the key answers to C.A.R -Hoare's question -"How -did software get so reliable without proof."

    +of the key answers to C.A.R +Hoare's question +"How did software get so reliable without proof."

    Regression test

    Boost uses an automatic regression test suite which generates HTML compiler @@ -98,4 +97,4 @@ www.boost.org/LICENSE_1_0.txt)

    - \ No newline at end of file + diff --git a/version_history.html b/version_history.html index 59128e1..7829041 100644 --- a/version_history.html +++ b/version_history.html @@ -6,11 +6,7 @@ Boost Version History - + @@ -55,6 +51,606 @@
    +
    +

    1.33.1 (5 Dec 2005)

    +

    Updated Libraries

    + +
      +
    • Any Library: Cast to + reference types introduced in 1.33.0 is now + documented on any_cast documentation + page.
    • + +
    • + Bind Library: + + Bind expressions now support + + comparisons and negation. Example: + bind(&X::name, _1) < bind(&X::name, + _2). +
    • + +
    • 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.
    • + +
    • + Boost.Python: + +
        +
      • Added support for docstrings on nonstatic + properties.
      • + +
      • We now export the client-provided + docstrings for init<optional<> + > and + XXX_FUNCTION_OVERLOADS() + for only the last overload.
      • + +
      • Support for Embedded VC++ 4 and GCC-3.3 on + MacOS added
      • + +
      • Introduced better support for rvalue + from-python conversions of shared_ptr.
      • + +
      • Support for exposing + vector<T*> with the indexing + suite.
      • + +
      • updated visual studio project build + file.
      • + +
      • Added search feature to the index + page.
      • +
      +
    • + +
    • 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.

    +
    +
    +

    1.33.0 (11 Aug 2005)

    + +

    New Libraries

    + +
      +
    • Iostreams + Library: Framework for defining streams, + stream buffers and i/o filters, from Jonathan + Turkanis.
    • + +
    • Functional/Hash + Library: A TR1 hash function object that can + be extended to hash user defined types, from Daniel + James.
    • + +
    • Parameter + Library: Write functions that accept + arguments by name: especially useful when a function + has more than one argument with a useful default value, + since named arguments can be passed in any order.
    • + +
    • Pointer Container + Library: Containers for storing + heap-allocated polymorphic objects to ease + OO-programming, from Thorsten Ottosen.
    • + +
    • Wave: Standards + conformant implementation of the mandated C99/C++ + preprocessor functionality packed behind an easy to use + iterator interface, from Hartmut Kaiser.
    • +
    + +

    Updated Libraries

    + +
      +
    • Any Library: + any_cast has been enhanced to allow direct + access to any's held value.
    • + +
    • Assignment + Library: Support for Pointer Container + Library and new efficient functions + ref_list_of() and + cref_list_of() for generating anonymous + ranges.
    • + +
    • Bind Library: Bind + expressions now support comparisons and + negation. Example: bind(&X::name, _1) + < bind(&X::name, _2).
    • + +
    • + Date-Time + Library: + + +
    • + +
    • + Graph + Library: Introduced several new algorithms + and improved existing algorithms: + + +
    • + +
    • + Multi-index + Containers Library: + + +
    • + +
    • + Program + Options Library: + +
        +
      • Option descriptions are now printed with word + wrapping.
      • + +
      • Command line parser can bypass unregistered + options, instread of throwing.
      • + +
      • Removed support for "implicit" (optional) + values.
      • + +
      • New customization method + 'command_line_parser::extra_style_parser'. Unlike + 'additional_parser', allows the user to parse + several tokens and return a vector of options, not + just a single option.
      • + +
      • Work with disabled exceptions.
      • +
      +
    • + +
    • Property Map + Library: Introduced the + dynamic properties class, which provides + dynamically-typed access to a set of property + maps.
    • + +
    • + Boost.Python: + +
        +
      • Added support for docstrings on nonstatic + properties.
      • + +
      • We now export the client-provided docstrings + for init<optional<> > and + XXX_FUNCTION_OVERLOADS() for + only the last overload.
      • + +
      • Support for Embedded VC++ 4 and GCC-3.3 on + MacOS added
      • + +
      • Introduced better support for rvalue + from-python conversions of shared_ptr.
      • + +
      • Support for exposing + vector<T*> with the indexing + suite.
      • + +
      • updated visual studio project build file.
      • + +
      • Added search feature to the index page.
      • +
      +
    • + +
    • Random Number + Library: improved initialization for + mersenne_twister, algorithm by Makoto + Matsumoto and Takuji Nishimura, implemented for Boost + by Jens Maurer.
      + Note: All test vectors for + mersenne_twisters constructed or seeded + without parameters or with a single unsigned + int parameter become invalid.
    • + +
    • Range Library: + Minor addition of convenience functions to + iterator range like front(), + back() and operator[]().
    • + +
    • + Regex Library: + +
        +
      • Rewritten front end parser now supports + (?imsx-imsx) constructs, plus lookbehind assertions + and conditional expressions.
      • + +
      • Thin wrapper classes improve integration with + MFC/ATL code.
      • + +
      • Full (optional) Unicode support via the ICU + library.
      • +
      Refer to the regex history + page for more information on these and other + small changes. +
    • + +
    • + Serialization + Library: + +
        +
      • DLL version.
      • + +
      • Auto-linking.
      • + +
      • Serialization of variants.
      • + +
      • Improved serialization of shared pointers.
      • +
      +
    • + +
    • Signals Library: + added slot blocking/unblocking, from Frantz Maerten. + Huge improvements to signal invocation performance from + Robert Zeh.
    • +
    + +

    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.

    + +
      +
    • Apple GCC + 3.x 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.
    • + +
    • + 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 beta. Note: due to intermittent problems with + Visual C++ 8.0 beta, and the presence of a variety of + pre-release compiler builds, we are unable to guarantee + compatibility until the final compiler is + released.
    • +
    + +

    Acknowledgements

    + +

    Medieval Mr. GregorDouglas 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, 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.

    +
    +

    1.32.0 (19 Nov 2004)

    @@ -1997,7 +2593,6 @@