| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228 |
- <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
- <html>
- <head>
- <meta name="generator" content=
- "HTML Tidy for Cygwin (vers 1st April 2002), see www.w3.org">
- <title>Getting Started</title>
- <meta name="generator" content="Microsoft FrontPage 5.0">
- <meta http-equiv="Content-Language" content="en-us">
- <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
- <link rel="stylesheet" type="text/css" href="../boost.css">
- </head>
- <body bgcolor="#FFFFFF" text="#000000">
- <table summary="" width="100%" border="0" cellspacing="0" cellpadding=
- "0">
- <tr valign="top">
- <td valign="top" align="left"><img src="../c%2B%2Bboost.gif" alt=
- "c++boost.gif (8819 bytes)" width="277" height="86"></td>
- <td align="right" valign="top">
- <table summary="" border="1" cellspacing="0" cellpadding="2">
- <tr>
- <td>
- <table summary="" border="0" cellspacing="0" cellpadding="2">
- <tr>
- <td bgcolor="#DDDDDD">
- <p>. <a href="../index.htm">Home</a><br>
- . <a href=
- "../libs/libraries.htm">Libraries</a><br>
- . <a href="../people/people.htm">People</a><br>
- . <a href="faq.htm">FAQ</a><br>
- . <a href="index.htm">More</a></p>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- <h1>Getting Started</h1>
- <ul>
- <li><a href="#Introduction">Introduction</a></li>
- <li>
- <a href="#Download">Download</a>
- <ul>
- <li><a href="#.zip">.zip file</a></li>
- <li><a href="#.tar.gz">.tar.gz and .tar.bz2 files</a></li>
- <li><a href="#CVS">Boost CVS Repository</a></li>
- </ul>
- </li>
- <li>
- <a href="#Preparation">Preparation</a>
- <ul>
- <li><a href="#Configuring">Configuring the tools</a></li>
- <li><a href="#Tools">Supported Toolsets</a></li>
- </ul>
- </li>
- <li><a href="#Build_Install">Build and Install</a></li>
- <li><a href="#Results">Results</a></li>
- <li><a href="#Additional_Steps">Additional Steps</a></li>
- </ul>
- <h2><a name="Introduction">Introduction</a></h2>
- <p>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:</p>
- <ol>
- <li><a href="#step1">Download Boost</a>.</li>
- <li><a href="#step2">Install Boost.Jam</a>.</li>
- <li><a href="#step3">Configure your compiler toolset</a>.</li>
- <li><a href="#step4">Go to Boost distribution directory</a>.</li>
- <li><a href="#step5">Build and install</a>.</li>
- </ol>
- <h2><a name="Download"></a>Download</h2>
- <table summary="" width="100%" border="0" cellspacing="2" cellpadding=
- "2">
- <tr align="left" valign="top">
- <td width="40" align="center" valign="top" bgcolor="#FFFF66"><font
- size="6"><b><a name="step1"></a>1</b></font></td>
- <td>The Boost Libraries are distributed through the SourceForge file
- distribution system. Click here to <b><a href=
- "http://sourceforge.net/project/showfiles.php?group_id=7586"><font
- size="4">download releases from SourceForge</font></a></b>. And
- unpack the release to a convenient location.</td>
- </tr>
- </table>
- <p>The Boost release includes all of the libraries and other material
- from the web site. It is available in <a href="#.zip">ZIP</a>, <a href=
- "#.tar.gz">TAR.GZ</a>, and <a href="#.tar.gz">TAR.BZ2</a> formats. Past
- releases are also available.</p>
- It is also possible to download current snapshots of work-in-progress
- from Boost's <a href="#CVS">CVS repository</a>.
- <h3><a name=".zip">.zip</a> file</h3>
- 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 <a href=
- "http://www.info-zip.org/">Info-ZIP</a> web site, which supplies versions
- for many operating systems.
- <p>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.</p>
- <h3><a name=".tar.gz">.tar.gz</a> and .tar.bz2 files</h3>
- <p>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.</p>
- <p>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.</p>
- <p>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.</p>
- <h3>Boost <a name="CVS">CVS</a> Repository</h3>
- <p>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.</p>
- <h4>Boost CVS access via command line or graphical clients</h4>
- For those who have CVS clients installed, the libraries are also
- available from the public <a href=
- "http://sourceforge.net/cvs/?group_id=7586">Boost CVS repository</a>.
- 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.
- <p>See the much improved <a href=
- "http://sourceforge.net/docman/?group_id=1">CVS documentation</a>
- (Section F) from SourceForge, which includes links to the home pages for
- various GUI and command line clients.</p>
- <p>The general procedure for command-line clients is something like
- this:</p>
- <blockquote>
- <code>cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/boost
- login</code><br>
- [Hit <return> when it asks for a password]<br>
- <code>cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/boost
- checkout boost</code><br>
- <code>cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/boost
- logout</code>
- </blockquote>
- Read the manual for your CVS client for further information.
- <p>This access is read-only; if you are a library author and wish to have
- CVS write access, please contact one of the <a href=
- "moderators.html">moderators</a>.</p>
- <h4>Boost CVS access via web <a name="Browser">Browser</a></h4>
- For access to the CVS archive from any modern web browser, you can also
- use the <a href=
- "http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/boost/boost/">web
- browser interface</a>. Try one of the color diffs to see how
- a file has changed over time. <b>Note:</b> this interface is only
- suitable for viewing individual files and their revision histories. If
- you need an image of the whole CVS tree, <a href=
- "http://www.boost-consulting.com">Boost Consulting</a> provides an hourly
- <a href="http://www.boost-consulting.com/boost.tar.bz2">snapshot in
- .tar.bz2 format</a>.
- <h4><a name="generated">Documentation</a> generated from BoostBook in
- CVS</h4>
- <p>Some of the Boost documentation is generated from <a href=
- "../doc/html/boostbook.html">BoostBook XML</a> 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 <a href=
- "http://www.boost.org/regression-logs/cs-win32_metacomm/doc/html/libraries.html">
- Nightly Generated Documentation</a> 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.</p>
- <h2><a name="Preparation"></a>Preparation</h2>
- <p>The recommended way to build and install the Boost Libraries is to use
- <a href="../tools/build/v1/build_system.htm">Boost.Build</a>, 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.</p>
- <table summary="" width="100%" border="0" cellspacing="2" cellpadding=
- "2">
- <tr align="left" valign="top">
- <td width="40" align="center" valign="top" bgcolor="#FFFF66"><font
- size="6"><b><a name="step2"></a>2</b></font></td>
- <td>The build system uses <a href=
- "../tools/build/jam_src/index.html">Boost.Jam</a>, an extension of
- the <a href="http://www.perforce.com/jam/jam.html">Perforce Jam</a>
- portable <i>make</i> replacement. The recommended way to get
- Boost.Jam if you are using a Boost distribution is to <strong><a
- href=
- "http://sourceforge.net/project/showfiles.php?group_id=7586&package_id=72941">
- download a prebuilt executable</a></strong> 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 neccessary to
- <a href="../tools/build/jam_src/index.html#building_bjam">build
- <tt>bjam</tt> from sources</a> included in the Boost source tree. To
- install Boost.Jam, copy the <tt>bjam</tt> executable to a location
- accessible in your <tt>PATH</tt>.</td>
- </tr>
- </table>
- <h3><a name="Configuring">Configuring the tools</a></h3>
- <p>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:</p>
- <ol>
- <li>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.<br>
- <br>
- </li>
- <li>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 <code>bjam</code>
- 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
- <tt>bjam</tt> command-line you use the "<tt>-s</tt>" option. For
- example:<br>
- <br>
- <tt>bjam "-sGCC_ROOT=/usr/local/gcc-3.3.2"</tt><br>
- <br>
- Some variables, like the toolset <tt>TOOLS</tt> 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.<br>
- </li>
- </ol>
- <h3><a name="Tools">Supported Toolsets</a></h3>
- <table summary="" width="100%" border="0" cellspacing="2" cellpadding=
- "2">
- <tr align="left" valign="top">
- <td width="40" align="center" valign="top" bgcolor="#FFFF66"><font
- size="6"><b><a name="step3"></a>3</b></font></td>
- <td>The following toolsets are supported by Boost.Build. For
- information about <a href="#Configuring">configuring</a> each
- toolset, click its name in the leftmost column.</td>
- </tr>
- </table>
- <br>
-
- <table summary="" border="1" cellpadding="5">
- <tr>
- <td><b>TOOLS Name</b></td>
- <td><b>Description</b></td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/borland-tools.html"><code>borland</code></a></td>
- <td><a href=
- "http://www.borland.com/bcppbuilder/freecompiler">Borland</a>
- C++</td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/como-tools.html"><code>como</code></a></td>
- <td><a href="http://www.comeaucomputing.com">Comeau C++</a> compiler
- front-end for non-Windows platforms</td>
- </tr>
- <tr>
- <td><code><a href=
- "../tools/build/v1/como-tools.html">como-win32</a></code></td>
- <td><a href="http://www.comeaucomputing.com">Comeau C++</a> compiler
- front-end for Windows, using Microsoft <a href=
- "http://msdn.microsoft.com/visualc/">Visual C++</a>as a
- back-end.</td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/cw-tools.html"><code>cw</code></a></td>
- <td><a href="http://www.metrowerks.com">Metrowerks CodeWarrior</a>
- Pro 6.x, 7.x, 8.x, and 9.x command-line tools</td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/darwin-tools.html"><code>darwin</code></a></td>
- <td>Apple Darwin OS hosted GNU <a href=
- "http://developer.apple.com/tools/compilers.html">GCC</a>.</td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/edg-tools.html"><code>edg</code></a></td>
- <td><a href="http://www.edg.com/">Edison Design Group</a> compiler
- front-end (evaluation version)</td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/gcc-tools.html"><code>gcc</code></a></td>
- <td><a href="http://gcc.gnu.org">GNU GCC</a> on Unix and <a href=
- "http://www.cygwin.com">Cygwin</a>.</td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/gcc-stlport-tools.html"><code>gcc-stlport</code></a></td>
- <td><a href="http://gcc.gnu.org">GNU GCC</a> on Unix and <a href=
- "http://www.cygwin.com">Cygwin</a>, using the <a href=
- "http://www.stlport.org">STLport</a> standard library
- implementation</td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/gcc-nocygwin-tools.html"><code>gcc-nocygwin</code></a></td>
- <td>GNU GCC Cygwin command line compiler tools running in "no-cygwin"
- mode (produces commercially redistributable objects)</td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/intel-linux-tools.html"><code>intel-linux</code></a></td>
- <td><a href=
- "http://www.intel.com/software/products/compilers/c60l/">Intel C++
- for Linux</a></td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/intel-win32-tools.html"><code>intel-win32</code></a></td>
- <td><a href=
- "http://www.intel.com/software/products/compilers/c60/">Intel C++ for
- Windows</a> using the Dinkumware standard library in the
- Intel-required Microsoft <a href=
- "http://msdn.microsoft.com/visualc/">Visual C++</a> 6 or 7
- installation</td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/kcc-tools.html"><code>kcc</code></a></td>
- <td><a href="http://developer.intel.com/software/products/kcc/">KAI
- C++</a></td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/kylix-tools.html"><code>kylix</code></a></td>
- <td><a href="http://www.borland.com/kylix">Borland C++ for Linux
- (Kylix).</a></td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/mingw-tools.html"><code>mingw</code></a></td>
- <td>GNU GCC and associated tools in <a href=
- "http://www.mingw.org">MinGW</a> configuration (produces commercially
- redistributable objects)</td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/mipspro-tools.html"><code>mipspro</code></a></td>
- <td>SGI <a href=
- "http://www.sgi.com/developers/devtools/languages/mipspro.html">MIPSpro
- C and C++</a></td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/msvc-tools.html"><code>msvc</code></a></td>
- <td>Microsoft <a href="http://msdn.microsoft.com/visualc/">Visual
- C++</a> version 6 command-line tools. NOTE; For version 7.x (the .NET
- series) use the vc7 or vc7.1 toolsets below.</td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/msvc-stlport-tools.html"><code>msvc-stlport</code></a></td>
- <td>Microsoft <a href="http://msdn.microsoft.com/visualc/">Visual
- C++</a> version 6 command-line tools, using the <a href=
- "http://www.stlport.org">STLport</a> standard library implementation.
- NOTE; For version 7.x (the .NET series) use the vc7-stlport or
- vc7.1-stlport toolsets below.</td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/sunpro-tools.html"><code>sunpro</code></a></td>
- <td><a href=
- "http://wwws.sun.com/software/sundev/suncc/index.html">SunPRO C++</a>
- compiler</td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/tru64cxx-tools.html"><code>tru64cxx</code></a></td>
- <td><a href="http://www.tru64unix.compaq.com/cplus/">Compaq C++</a>
- for Tru64 UNIX (versions prior to 6.5)</td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/tru64cxx-tools.html"><code>tru64cxx65</code></a></td>
- <td><a href="http://www.tru64unix.compaq.com/cplus/">Compaq C++</a>
- Version 6.5 for Tru64 UNIX</td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/vacpp-tools.html"><code>vacpp</code></a></td>
- <td><a href="http://www-3.ibm.com/software/ad/vacpp/">IBM Visual Age
- C++</a> command-line tools</td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/vc7-tools.html"><code>vc7</code></a></td>
- <td>Microsoft <a href="http://msdn.microsoft.com/visualc/">Visual
- C++</a> command-line tools from Visual Studio .NET.</td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/vc7-stlport-tools.html"><code>vc7-stlport</code></a></td>
- <td>Microsoft <a href="http://msdn.microsoft.com/visualc/">Visual
- C++</a> command-line tools from Visual Studio .NET + STLPort.</td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/vc7.1-tools.html"><code>vc7.1</code></a></td>
- <td>Microsoft <a href="http://msdn.microsoft.com/visualc/">Visual
- C++</a> command-line tools from Visual Studio .NET 2003.</td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/vc7.1-stlport-tools.html"><code>vc7.1-stlport</code></a></td>
- <td>Microsoft <a href="http://msdn.microsoft.com/visualc/">Visual
- C++</a> command-line tools from Visual Studio .NET 2003 +
- STLPort.</td>
- </tr>
- </table>
- <h2><a name="Build_Install"></a>Build and Install</h2>
- <p>The common build and install process is driven by the top-level build
- file (<a href="../Jamfile">Jamfile</a>).</p>
- <table summary="" width="100%" border="0" cellspacing="2" cellpadding=
- "2">
- <tr align="left" valign="top">
- <td width="40" align="center" valign="top" bgcolor="#FFFF66"><font
- size="6"><b><a name="step4"></a>4</b></font></td>
- <td>
- <p>First you need to change to the directory where you have the
- Boost distribution you downloaded. For example:</p>
- <blockquote>
- <p><code>chdir boost-1.31.0</code></p>
- </blockquote>
- </td>
- </tr>
- </table>
- <p>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
- "<tt>/usr/local</tt>", and on Windows systems the default is
- "<tt>C:\Boost</tt>". Within those directories libraries are installed to
- the "<tt>lib</tt>" subdirectory, and headers to an
- "<tt>include/boost-1_31</tt>" subdirectory, the version will reflect the
- distribution you are installing.</p>
- <table summary="" width="100%" border="0" cellspacing="2" cellpadding=
- "2">
- <tr align="left" valign="top">
- <td width="40" align="center" valign="top" bgcolor="#FFFF66"><font
- size="6"><b><a name="step5"></a>5</b></font></td>
- <td>
- Invoke the build system, specifying the <a href=
- "#Tools">toolset</a>(s) you wish to use, to build and install. For
- example for GNU/GCC.
- <blockquote>
- <p><code>bjam "-sTOOLS=gcc" install</code></p>
- </blockquote>
- <p>Or if you are interested only in the built libraries you can
- have them built and collected to a common directory without
- installation.</p>
- <blockquote>
- <p><code>bjam "-sTOOLS=gcc" stage</code></p>
- </blockquote>
- </td>
- </tr>
- </table>
- <p>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 "<tt>bjam --help</tt>". The full invocation takes the form:</p>
- <blockquote>
- <p><code>bjam [<i>options</i>...] [install|stage]</code></p>
- </blockquote>
- <table summary="" border="1" cellspacing="0" cellpadding="2">
- <tr>
- <th>Action</th>
- <td> </td>
- </tr>
- <tr>
- <td nowrap align="left" valign="top"><i>none</i></td>
- <td align="left" valign="top">Only builds the Boost libraries. This
- lets you do the first part of what the <tt>install</tt> action
- normally does without copying the built libraries to the install
- location.</td>
- </tr>
- <tr>
- <td nowrap align="left" valign="top"><tt>install</tt></td>
- <td align="left" valign="top">Builds and installs Boost libraries and
- headers.</td>
- </tr>
- <tr>
- <td nowrap align="left" valign="top"><tt>stage</tt></td>
- <td align="left" valign="top">Builds the Boost libraries and copies
- them into a common directory.</td>
- </tr>
- <tr>
- <th nowrap>Option</th>
- <td align="left" valign="top"> </td>
- </tr>
- <tr>
- <td nowrap align="left" valign="top"><tt>--help</tt></td>
- <td align="left" valign="top">Shows a short summary of the options
- and syntax of the command.</td>
- </tr>
- <tr>
- <td nowrap align="left" valign="top">
- <tt>-sTOOLS=<<i>toolsets</i>></tt></td>
- <td align="left" valign="top">The list of tools to compile with.
- Usually only one is needed.</td>
- </tr>
- <tr>
- <td nowrap align="left" valign="top"><tt>--prefix=PREFIX</tt></td>
- <td align="left" valign="top">Install architecture independent files
- here.<br>
- Default; <tt>C:\Boost</tt> on Win32.<br>
- Default; <tt>/usr/local</tt> on Unix. Linux, etc.</td>
- </tr>
- <tr>
- <td nowrap align="left" valign="top">
- <tt>--exec-prefix=EPREFIX</tt></td>
- <td align="left" valign="top">Install architecture dependent files
- here.<br>
- Default; <tt>PREFIX</tt></td>
- </tr>
- <tr>
- <td nowrap align="left" valign="top"><tt>--libdir=DIR</tt></td>
- <td align="left" valign="top">Install libraries here.<br>
- Default; <tt>EPREFIX/lib</tt></td>
- </tr>
- <tr>
- <td nowrap align="left" valign="top"><tt>--includedir=DIR</tt></td>
- <td align="left" valign="top">Install source headers here. The Boost
- headers are installed in a version specific
- "<tt>boost-<version></tt>" subdirectory in this directory.<br>
- Default; <tt>PREFIX/include</tt></td>
- </tr>
- <tr>
- <td nowrap align="left" valign="top"><tt>--builddir=DIR</tt></td>
- <td align="left" valign="top">Build 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!</td>
- </tr>
- <tr>
- <td nowrap align="left" valign="top"><tt>--stagedir=DIR</tt></td>
- <td align="left" valign="top">When staging only, with the
- "<tt>stage</tt>" action, copy to the given location.<br>
- Default; <tt>./stage</tt></td>
- </tr>
- <tr>
- <td nowrap align="left" valign="top">
- <tt>--without-<<i>library</i>></tt></td>
- <td align="left" valign="top">Do not build, stage, or install the
- specified library.</td>
- </tr>
- <tr>
- <td nowrap align="left" valign="top">
- <tt>--with-python-root[=PYTHON_ROOT]</tt></td>
- <td align="left" valign="top">Build Boost.Python libraries with the
- Python devel packages located at <tt>PYTHON_ROOT</tt>. The
- Boost.Python libraries are built only if the build can find the
- Python development package at this location.<br>
- Default; <tt>C:\tools\python</tt> on Win32.<br>
- Default; <tt>/usr/local</tt> on Unix, Linux, etc.<br>
- Default; <tt>/usr</tt> on Cygwin.</td>
- </tr>
- <tr>
- <td nowrap align="left" valign="top"><tt>--with-pydebug</tt></td>
- <td align="left" valign="top">Build 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.</td>
- </tr>
- </table>
- <p>There are additional options as supported by <a href=
- "../tools/build/v1/build_system.htm">Boost.Build</a> and <a href=
- "../tools/build/jam_src/index.html">Boost.Jam</a>. Of the additional
- options perhaps the most imporant is "<tt>-s<a href=
- "../tools/build/v1/build_system.htm#build">BUILD</a>=<features/variants></tt>"
- which lets you override what is built by default. The
- "<tt><features/variants></tt>" 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 "<tt>debug release
- <runtime-link>static/dynamic <threading>single/multi</tt>",
- in which "<tt>debug</tt>" and "<tt>release</tt>" are variants, and the
- rest features with two values each.</p>
- <p>If you have some feedback about the build and install process please
- drop us a line at the <a href="mailing_lists.htm#jamboost">Boost.Build
- mailing list</a>. We are particularly interested if it works for your
- platform and if it there is anything that you feel could be done
- better.</p>
- <h2><a name="Results"></a>Results</h2>
- <p>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:</p>
- <ol>
- <li><tt>libboost_date_time-gcc-d-1_31.so</tt></li>
- <li><tt>libboost_date_time-gcc-mt-d-1_31.so</tt></li>
- <li><tt>libboost_date_time-gcc-1_31.so</tt></li>
- <li><tt>libboost_date_time-gcc-mt-1_31.so</tt></li>
- <li><tt>libboost_date_time-gcc-d-1_31.a</tt></li>
- <li><tt>libboost_date_time-gcc-mt-d-1_31.a</tt></li>
- <li><tt>libboost_date_time-gcc-1_31.a</tt></li>
- <li><tt>libboost_date_time-gcc-mt-1_31.a</tt><br>
- </li>
- </ol>
- <table summary="" border="0" cellspacing="0" cellpadding="0" width=
- "100%">
- <tr>
- <td colspan="11">
- <table summary="" border="0" cellspacing="2" cellpadding="2"
- bgcolor="#CCCCCC">
- <tr>
- <th>· Library Prefix</th>
- </tr>
- </table>
- </td>
- <td width="80%"> </td>
- </tr>
- <tr>
- <td rowspan="7" valign="bottom" bgcolor="#CCCCCC"><tt><font size=
- "+1">lib</font></tt></td>
- <td colspan="11">
- <table summary="" border="0" cellspacing="2" cellpadding="2">
- <tr>
- <th>· Library Name</th>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td rowspan="6" valign="bottom"><tt><font size=
- "+1">boost_date_time</font></tt></td>
- <td colspan="10">
- <table summary="" border="0" cellspacing="2" cellpadding="2"
- bgcolor="#CCCCCC">
- <tr>
- <th>· Toolset</th>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td rowspan="5" valign="bottom" bgcolor="#CCCCCC"><tt><font size=
- "+1">-</font></tt></td>
- <td rowspan="5" valign="bottom" bgcolor="#CCCCCC"><tt><font size=
- "+1">gcc</font></tt></td>
- <td colspan="8">
- <table summary="" border="0" cellspacing="2" cellpadding="2">
- <tr>
- <th>· Threading</th>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td rowspan="4" valign="bottom"><tt><font size=
- "+1">-</font></tt></td>
- <td rowspan="4" valign="bottom"><tt><font size=
- "+1">mt</font></tt></td>
- <td colspan="6">
- <table summary="" border="0" cellspacing="2" cellpadding="2"
- bgcolor="#CCCCCC">
- <tr>
- <th>· Runtime</th>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td rowspan="3" valign="bottom" bgcolor="#CCCCCC"><tt><font size=
- "+1">-</font></tt></td>
- <td rowspan="3" valign="bottom" bgcolor="#CCCCCC"><tt><font size=
- "+1">d</font></tt></td>
- <td colspan="4">
- <table summary="" border="0" cellspacing="2" cellpadding="2">
- <tr>
- <th>· Boost Version</th>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td rowspan="2" valign="bottom"><tt><font size=
- "+1">-</font></tt></td>
- <td rowspan="2" valign="bottom"><tt><font size=
- "+1">1_31</font></tt></td>
- <td colspan="2">
- <table summary="" border="0" cellspacing="2" cellpadding="2"
- bgcolor="#CCCCCC">
- <tr>
- <th>· Library Type</th>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td valign="bottom" bgcolor="#CCCCCC"><tt><font size=
- "+1">.a</font></tt></td>
- <td> </td>
- </tr>
- </table>
- <h3>Library Prefix</h3>
- <p>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:</p>
- <ul>
- <li><tt>lib*.so</tt></li>
- <li><tt>lib*.a</tt></li>
- </ul>
- <p>On Windows shared libraries do not have the prefix to differentiate
- the import libraries from static libraries. Consequently on Windows the
- libraries are named:</p>
- <ul>
- <li><tt>*.dll</tt></li>
- <li><tt>*.lib</tt></li>
- <li><tt>lib*.lib</tt></li>
- </ul>
- <h3>Library Name</h3>
- <p>For Boost libraries the name has the "<tt>boost_</tt>" prefix to
- separate them from other libraries in your system.</p>
- <h3>Toolset</h3>
- <p>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
- "<tt>gcc-3.2.3</tt>" the toolset tag would be "<tt>gcc32</tt>". The
- toolset abbreviations used are as follows:</p>
- <table border="1" cellpadding="5" summary="">
- <tr>
- <td><b>TOOLS Name</b></td>
- <td><b>Abbreviation</b></td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/borland-tools.html"><code>borland</code></a></td>
- <td><tt>bcb</tt></td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/como-tools.html"><code>como</code></a></td>
- <td><tt>como</tt></td>
- </tr>
- <tr>
- <td><code><a href=
- "../tools/build/v1/como-tools.html">como-win32</a></code></td>
- <td><tt>como</tt></td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/cwpro8-tools.html"><code>cwpro8</code></a></td>
- <td><tt>cw8</tt></td>
- </tr>
- <tr>
- <td><code><a href="../tools/build/v1/cwpro9-tools.html">cwpro</a><a
- href="../tools/build/v1/cwpro8-tools.html">9</a></code></td>
- <td><tt><code>cw</code></tt><code>9</code></td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/darwin-tools.html"><code>darwin</code></a></td>
- <td><tt>osx</tt></td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/edg-tools.html"><code>edg</code></a></td>
- <td><tt>edg</tt></td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/gcc-tools.html"><code>gcc</code></a></td>
- <td><tt>gcc</tt></td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/gcc-stlport-tools.html"><code>gcc-stlport</code></a></td>
- <td><tt>gcc</tt></td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/gcc-nocygwin-tools.html"><code>gcc-nocygwin</code></a></td>
- <td><tt>gcc</tt></td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/intel-linux-tools.html"><code>intel-linux</code></a></td>
- <td><tt>il</tt></td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/intel-win32-tools.html"><code>intel-win32</code></a></td>
- <td><tt>iw</tt></td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/kcc-tools.html"><code>kcc</code></a></td>
- <td><tt>kcc</tt></td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/kylix-tools.html"><code>kylix</code></a></td>
- <td><tt>bck</tt></td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/metrowerks-tools.html"><code>metrowerks</code></a></td>
- <td><tt>cw</tt></td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/mingw-tools.html"><code>mingw</code></a></td>
- <td><tt>mgw</tt></td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/mipspro-tools.html"><code>mipspro</code></a></td>
- <td><tt>mp</tt></td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/msvc-tools.html"><code>msvc</code></a></td>
- <td><tt>vc</tt></td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/msvc-stlport-tools.html"><code>msvc-stlport</code></a></td>
- <td><tt>vc</tt></td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/sunpro-tools.html"><code>sunpro</code></a></td>
- <td><tt>sw</tt></td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/tru64cxx-tools.html"><code>tru64cxx</code></a></td>
- <td><tt>tru</tt></td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/tru64cxx-tools.html"><code>tru64cxx65</code></a></td>
- <td><tt>tru</tt></td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/vacpp-tools.html"><code>vacpp</code></a></td>
- <td><tt>xlc</tt></td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/vc7-tools.html"><code>vc7</code></a></td>
- <td><tt>vc</tt></td>
- </tr>
- <tr>
- <td><a href=
- "../tools/build/v1/vc7.1-tools.html"><code>vc7.1</code></a></td>
- <td><tt>vc</tt></td>
- </tr>
- <tr>
- <td>Others</td>
- <td>The first part of the toolset name.</td>
- </tr>
- </table>
- <h3>Threading</h3>
- <p>This tag indicates if the library is compiled with threading support.
- If threading is enabled "<tt>-mt</tt>" is added, otherwise nothing is
- added.</p>
- <h3>Runtime</h3>
- <p>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.</p>
- <table border="1" cellpadding="5" summary="">
- <tr>
- <td><b>Key</b></td>
- <td><b>Feature</b></td>
- </tr>
- <tr>
- <td><tt>s</tt></td>
- <td>Static link to runtime.</td>
- </tr>
- <tr>
- <td><tt>g</tt></td>
- <td>Debug runtime.</td>
- </tr>
- <tr>
- <td><tt>y</tt></td>
- <td>Debug Python system.</td>
- </tr>
- <tr>
- <td><tt>d</tt></td>
- <td>Debug enabled code.</td>
- </tr>
- <tr>
- <td><tt>p</tt></td>
- <td>STLport runtime, instead of the vendor toolset runtime.</td>
- </tr>
- <tr>
- <td><tt>n</tt></td>
- <td>STLport runtime using the "native" IO streams instead of the
- STLport IO streams.</td>
- </tr>
- </table>
- <p>For example if you compile debug code for STLport using native IO
- streams, and statically link to the debug runtime the tag would be:
- "<tt>-sgdpn</tt>".</p>
- <h3>Boost Version</h3>
- <p>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
- "<tt>-1_31</tt>". The patch version number is not included because it is
- assumed that patch versions are upward compatible.</p>
- <h3>Library Type</h3>
- <p>The extension holds the type of library. This follows the platform
- requirements. On Windows this is "<tt>.dll</tt>" for shared libraries,
- and "<tt>.lib</tt>" 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 "<tt>.so.1.31.0</tt>") with a
- symbolic link for the un-versioned library.</p>
- <h2><a name="Additional_Steps"></a>Additional Steps</h2>
- <p>Depending on your platform and configuration you may need to perform
- some additional configuration to get Boost to build and install.</p>
- <ul>
- <li><a href="../libs/config/config.htm#configuring">Configure the boost
- source code</a>. This step should not be required on the vast majority
- of platforms, but if you're trying to build Boost on an untested or
- unsupported platform it may be necessary.<br>
- <br>
- </li>
- <li>If Boost.Build has problems detecting your Python installation it
- will print a short messages about how to configure for finding the
- Python installation. For more information, see these detailed <a href=
- "../libs/python/doc/building.html#building">instructions</a>.</li>
- </ul>
- <hr>
- <p>Revised <!--webbot bot="Timestamp" s-type="EDITED"
- s-format="%d %B, %Y" startspan -->07
- January, 2004
- <!--webbot bot="Timestamp" endspan i-checksum="38706" --></p>
- <p>Copyright © Rene Rivera 2003.<br>
- Copyright © Jens Maurer 2001.</p>
- <p><small>Use, modification, and distribution are subject to the Boost
- Software License, Version 1.0. (See accompanying file <a href=
- "../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or copy at <a href=
- "http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
- </body>
- </html>
|