Improved auto-link information.

[SVN r26131]
This commit is contained in:
John Maddock 2004-11-06 12:41:30 +00:00
parent 8155c9ce16
commit fa770f9816

View File

@ -860,11 +860,115 @@
link by defining BOOST_ALL_DYN_LINK.</P>
<P>This feature can be disabled for Boost library <EM>whatever</EM> by defining
BOOST_WHATEVER_NO_LIB, or for all of Boost by defining BOOST_ALL_NO_LIB.</P>
<P>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 <code>#pragma
message</code> each time a library is selected for linking.</P>
<P>There are some Boost libraries (<A href="../libs/test/doc/index.html">Boost.Test</A>
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 <A href="../libs/config/index.html">Boost.Config</A>
documentation for more information on configuration macros.</P>
documentation for more information on configuration macros.&nbsp; The following
table shows the current supported configurations, (Boost libraries not listed
here consist of headers only):</P>
<P>
<TABLE id="Table2" cellSpacing="1" cellPadding="1" width="100%" border="1">
<TR>
<TD><STRONG>Library</STRONG></TD>
<TD><STRONG>Static Link</STRONG></TD>
<TD><STRONG>Dynamic Link</STRONG></TD>
<TD><STRONG>Default linkage</STRONG></TD>
<TD><STRONG>Automatic library selection</STRONG></TD>
<TD><STRONG>Comments</STRONG></TD>
</TR>
<TR>
<TD>Date-Time</TD>
<TD>Yes</TD>
<TD>Yes</TD>
<TD>static</TD>
<TD>Yes</TD>
<TD></TD>
</TR>
<TR>
<TD>Filesystem</TD>
<TD>Yes</TD>
<TD>
<P>Yes</P>
</TD>
<TD>static</TD>
<TD>Yes</TD>
<TD></TD>
</TR>
<TR>
<TD>Graph</TD>
<TD>Yes</TD>
<TD>No</TD>
<TD>static</TD>
<TD>No</TD>
<TD>The separate Graph library source is needed only when <A href="../libs/graph/doc/read-graphviz.html">
reading an AT&amp;T graphviz file.</A></TD>
</TR>
<TR>
<TD>Program Options</TD>
<TD>Yes</TD>
<TD>Yes</TD>
<TD>static</TD>
<TD>Yes</TD>
<TD></TD>
</TR>
<TR>
<TD>Python</TD>
<TD>Yes</TD>
<TD>Yes</TD>
<TD>dynamic</TD>
<TD>No</TD>
<TD>Since all Python extensions are DLL's it makes sense to dynamic link to the
Boost Python library&nbsp;by default (static linking is only really an option
if you are embedding python).</TD>
</TR>
<TR>
<TD>Regex</TD>
<TD>Yes</TD>
<TD>Yes</TD>
<TD>static</TD>
<TD>Yes</TD>
<TD></TD>
</TR>
<TR>
<TD>Serialisation</TD>
<TD>Yes</TD>
<TD>No</TD>
<TD>static</TD>
<TD>No</TD>
<TD>Automatic linking support will be introduced in a future release.</TD>
</TR>
<TR>
<TD>Signals</TD>
<TD>Yes</TD>
<TD>Yes</TD>
<TD>static</TD>
<TD>Yes</TD>
<TD></TD>
</TR>
<TR>
<TD>Test</TD>
<TD>Yes</TD>
<TD>No</TD>
<TD>static</TD>
<TD>No</TD>
<TD>Which library you link to depends upon which program entry point you define,
rather than which Boost.Test features you use.</TD>
</TR>
<TR>
<TD>Thread</TD>
<TD>Partial</TD>
<TD>Yes</TD>
<TD>dynamic</TD>
<TD>Yes</TD>
<TD>For technical reasons static linking is supported on only one Windows compiler
(Visual C++).</TD>
</TR>
</TABLE>
</P>
<h2><a id="Additional_Steps" 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>