| <html> | 
 | <head> | 
 | <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> | 
 | <title>Standalone library compilation</title> | 
 | <link rel="stylesheet" href="../../../style/style.css" type="text/css"> | 
 | <meta name="generator" content="DocBook XSL Stylesheets V1.74.0"> | 
 | <link rel="home" href="../../index.html" title="Boost Test Library"> | 
 | <link rel="up" href="../compilation.html" title="The UTF compilation variants and procedures"> | 
 | <link rel="prev" href="../compilation.html" title="The UTF compilation variants and procedures"> | 
 | <link rel="next" href="auto-linking.html" title="Support of the auto-linking feature"> | 
 | <script language="JavaScript1.2" src="../../../js/boost-test.js"></script> | 
 | </head> | 
 | <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> | 
 | <table width="100%"><tr> | 
 | <td width="10%"><a href="../../index.html"><img alt="Home" width="229" height="61" border="0" src="../../../../../../libs/test/docbook/img/boost.test.logo.png"></a></td> | 
 | <td valign="middle" align="left"> > <a href="../../utf.html">The Unit Test Framework</a> > <a href="../compilation.html">Compilation</a><a href="../user-guide.html"> | 
 |       > | 
 |       </a><b>Standalone library compilation</b> | 
 | </td> | 
 | <td><div class="spirit-nav"> | 
 | <a href="../compilation.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a href="auto-linking.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a> | 
 | </div></td> | 
 | </tr></table> | 
 | <hr> | 
 | <div class="section" lang="en"> | 
 | <div class="titlepage"><div><div><h4 class="title"> | 
 | <a name="utf.compilation.standalone"></a>Standalone library compilation</h4></div></div></div> | 
 | <p class="first-line-indented"> | 
 |     If you opted to link your program with the standalone library, you need to build it first. To build a standalone  | 
 |     library the all C++ files (.cpp), that constitute <acronym class="acronym">UTF</acronym> <a class="link" href="../../prg-exec-monitor/impl.html" title="The Program Execution Monitor implementation">implementation</a> need to be  | 
 |     listed as source files in your makefile<sup>[<a name="id646111" href="#ftn.id646111" class="footnote">3</a>]</sup>. | 
 |    </p> | 
 | <p class="first-line-indented"> | 
 |     The Jamfile for use with Boost.Build system is supplied in <code class="filename">libs/test/build</code> | 
 |     directory. The <acronym class="acronym">UTF</acronym> can be built as either <a name="prg-exec-monitor.compilation.standalone.static"></a>static  | 
 |     or <a name="prg-exec-monitor.compilation.standalone.dynamic"></a>dynamic library. | 
 |    </p> | 
 | <div class="section" lang="en"> | 
 | <div class="titlepage"><div><div><h5 class="title"> | 
 | <a name="utf.compilation.standalone.static"></a>Static library compilation</h5></div></div></div> | 
 | <p class="first-line-indented"> | 
 |      No special build options or macro definitions are required to build the static library. Using the Boost.Build | 
 |      system you can build the static library with the following command from | 
 |      <code class="filename">libs/test/build</code> directory: | 
 |     </p> | 
 | <div class="cmdsynopsis"><p><code class="command">bjam</code>  [-sTOOLS=<your-tool-name>] {-sBUILD=boost_unit_test_framework}</p></div> | 
 | <p class="first-line-indented"> | 
 |      Also on Windows you can use the Microsoft Visual Studio .NET project file provided. | 
 |     </p> | 
 | </div> | 
 | <div class="section" lang="en"> | 
 | <div class="titlepage"><div><div><h5 class="title"> | 
 | <a name="utf.compilation.standalone.dynamic"></a>Dynamic library compilation</h5></div></div></div> | 
 | <p class="first-line-indented"> | 
 |      To build the dynamic library<sup>[<a name="id646262" href="#ftn.id646262" class="footnote">4</a>]</sup> you  | 
 |      need to add <a class="xref" href="../compilation.html#utf.flag.dyn-link">BOOST_TEST_DYN_LINK</a> to the list of macro definitions in the  | 
 |      makefile. Using the Boost.Build system you can build the dynamic library with the following command from | 
 |      <code class="filename">libs/test/build</code> directory: | 
 |     </p> | 
 | <div class="cmdsynopsis"><p><code class="command">bjam</code>  [-sTOOLS=<your-tool-name>] {-sBUILD=boost_unit_test_framework}</p></div> | 
 | <p class="first-line-indented"> | 
 |      Also on Windows you can use the Microsoft Visual Studio .NET project file provided. | 
 |     </p> | 
 | <div class="important"><table border="0" summary="Important"> | 
 | <tr> | 
 | <td rowspan="2" align="center" valign="top" width="25"><img alt="[Important]" src="../../../../../../doc/html/images/important.png"></td> | 
 | <th align="left">Important</th> | 
 | </tr> | 
 | <tr><td align="left" valign="top"><p> | 
 |       For test module to successfully link with the dynamic library the flag | 
 |       <a class="xref" href="../compilation.html#utf.flag.dyn-link">BOOST_TEST_DYN_LINK</a> needs to be defined both during dynamic library build | 
 |       and during test module compilation. | 
 |      </p></td></tr> | 
 | </table></div> | 
 | </div> | 
 | <div class="footnotes"> | 
 | <br><hr width="100" align="left"> | 
 | <div class="footnote"><p><sup>[<a name="ftn.id646111" href="#id646111" class="simpara">3</a>] </sup>There are varieties of make systems that can be used. To name  | 
 |     a few: <acronym class="acronym">GNU</acronym> make (and other make clones) and build systems integrated into <acronym class="acronym">IDE</acronym>s | 
 |     (for  example Microsoft  Visual Studio). The Boost preferred solution is Boost.Build system that is based on top of  | 
 |     bjam  tool. Make  systems require some kind of configuration file that lists all files that constitute the library  | 
 |     and all build  options. For example the makefile that is used by make, or the Microsoft Visual Studio project file,  | 
 |     Jamfile is  used by Boost.Build. For the sake of simplicity let's call this file the makefile.</p></div> | 
 | <div class="footnote"><p><sup>[<a name="ftn.id646262" href="#id646262" class="simpara">4</a>] </sup>What is meant by the term dynamic library is a <em class="firstterm">dynamically  | 
 |      loaded library</em>, alternatively called a <em class="firstterm">shared library</em>.</p></div> | 
 | </div> | 
 | </div> | 
 | <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr> | 
 | <td align="left"></td> | 
 | <td align="right"><div class="copyright-footer">Copyright © 2001-2007 Gennadiy Rozental</div></td> | 
 | </tr></table> | 
 | <hr> | 
 | <div class="spirit-nav"> | 
 | <a accesskey="p" href="../compilation.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../compilation.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="auto-linking.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a> | 
 | </div> | 
 | </body> | 
 | </html> |