Sophie

Sophie

distrib > Mandriva > 10.0 > i586 > by-pkgid > ef9bad9e14fc2a68cb7c992c11d75f5e > files > 2625

libboost1-devel-1.31.0-1mdk.i586.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0//EN"
"http://www.w3.org/TR/REC-html40/strict.dtd">

<title>Boost.Compatibilty library</title>

<div>

<img src="../../c++boost.gif"
     alt="c++boost.gif (8819 bytes)"
     align="center"
     width="277" height="86">

<hr>
<h1>Boost.Compatibilty library</h1>

<p>
This library provides workarounds which allow the other Boost libraries
to be used on otherwise non-conforming platforms. We hope that it will
be possible to remove this library at some time in the future as
standard library suppliers become more conforming.

<h2>
Missing C++ standard library CXX headers (e.g &lt;cstdio&gt;) workaround</h2>

<p>
The Python script:
<tt><a href="generate_cpp_c_headers.py">generate_cpp_c_headers.py</a> </tt>creates a full set of C++ C header files
(e.g. &lt;cstdio&gt;) that are missing on some platforms.
The header files created by this script reside in the directory <tt><a href="../../boost/compatibility/cpp_c_headers/">boost/compatibility/cpp_c_headers</a></tt>.
To use the header files, add this directory to the include
file search path. For example:

<pre>
cxx -I/usr/local/boost/boost/compatibility/cpp_c_headers ...
</pre>

<p>
Supported platforms are:
<ul>
<li>Compaq Alpha, RedHat 6.2 Linux, Compaq C++ V6.3 (cxx)
<li>Compaq Alpha, Tru64 Unix V5.0, Compaq C++ V6.2 (cxx)
<li>Silicon Graphics, IRIX 6.5, MIPSpro Compilers: Version 7.3.1.1m (CC)
</ul>

<p>
There are more powerful alternatives to using
the Boost.Compatibility library CXX headers, e.g.
<a href="http://www.stlport.org/">STLport</a> or
<a href="http://www-pat.fnal.gov/personal/wb/boost/">ISOCXX</a>.
However, in contrast to these alternatives, the
<tt>generate_cpp_c_headers.py</tt> script is very light-weight (less
than 100 non-comment lines of Python code), much less ambitious,
significantly easier to maintain and therefore more suitable as an interim workaround.

<p>
Contributed by Ralf W. Grosse-Kunstleve.

<h2>
Missing C++ standard library &lt;limits&gt; header workaround <a href="../../boost/limits.hpp">boost/limits.hpp</a></h2>
<p>Several Boost libraries require the standard library's &lt;limits&gt; header,
yet this header is not always supplied by non-conforming compilers and
libraries.&nbsp; Header <a href="../../boost/limits.hpp">boost/limits.hpp</a>
simply includes the standard library &lt;limits&gt; header if available,
otherwise includes <a href="../../boost/detail/limits.hpp">boost/detail/limits.hpp</a>.&nbsp;
BOOST_NO_LIMITS from <a href="../config/config.htm">boost/config.hpp</a> is used
to determine &lt;limits&gt; availability.
<p>Note also the test program <a href="../config/test/limits_test.cpp">limits_test.cpp</a>

<p>
Contributed by Jens Maurer.

<p>
&nbsp;

<hr>
&copy; Copyright Ralf W. Grosse-Kunstleve 2001. Permission to copy,
use, modify, sell and distribute this document is granted provided this
copyright notice appears in all copies. This document is provided "as
is" without express or implied warranty, and with no claim as to its
suitability for any purpose.

<p>
Updated: April 16, 2001
</div>