| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195 |
- <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
- <html>
- <head>
- <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.boost.sourceforge.net:/cvsroot/boost
- login</code><br>
- [Hit <return> when it asks for a password]<br>
- <code>cvs -z3
- -d:pserver:anonymous@cvs.boost.sourceforge.net:/cvsroot/boost checkout
- boost<br>
- cvs -d:pserver:anonymous@cvs.boost.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>.
- <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. You can either <a href=
- "../tools/build/jam_src/index.html#building_bjam">build this
- yourself</a>, it's included with the distribution. Or obtain a
- <strong><a href=
- "http://sourceforge.net/project/showfiles.php?group_id=7586"><font size="4">
- prebuilt from SourceForge</font></a></strong>. 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/cwpro8-tools.html"><code>cwpro8</code></a></td>
- <td><a href="http://www.metrowerks.com">Metrowerks CodeWarrior</a> Pro
- 8.x command-line tools</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><a href="http://www.metrowerks.com">Metrowerks CodeWarrior</a> Pro
- 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/metrowerks-tools.html"><code>metrowerks</code></a></td>
- <td><a href="http://www.metrowerks.com">Metrowerks CodeWarrior</a>
- command-line tools</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/multiple</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>
|