mirror of
https://github.com/boostorg/regex.git
synced 2025-07-24 09:37:36 +02:00
Merge fixes from Trunk - mainly warning suppression.
[SVN r65720]
This commit is contained in:
@ -49,7 +49,7 @@
|
||||
file before you can use it, instructions for specific platforms are as follows:
|
||||
</p>
|
||||
<a name="boost_regex.install.building_with_bjam"></a><h5>
|
||||
<a name="id1007364"></a>
|
||||
<a name="id895671"></a>
|
||||
<a class="link" href="install.html#boost_regex.install.building_with_bjam">Building with bjam</a>
|
||||
</h5>
|
||||
<p>
|
||||
@ -58,49 +58,103 @@
|
||||
started guide</a> for more information.
|
||||
</p>
|
||||
<a name="boost_regex.install.building_with_unicode_and_icu_support"></a><h5>
|
||||
<a name="id1007388"></a>
|
||||
<a name="id895695"></a>
|
||||
<a class="link" href="install.html#boost_regex.install.building_with_unicode_and_icu_support">Building
|
||||
With Unicode and ICU Support</a>
|
||||
</h5>
|
||||
<p>
|
||||
A default build of this library does not enable Unciode support via ICU. There
|
||||
is no need to enable this support if you don't need it, but if you use ICU
|
||||
for your Unicode support already, and want to work with Unicode-aware regular
|
||||
expressions then read on.
|
||||
Boost.Regex is now capable of performing a configuration check to test whether
|
||||
ICU is already installed in your compiler's search paths. When you build you
|
||||
should see a message like this:
|
||||
</p>
|
||||
<pre class="programlisting"><span class="identifier">Performing</span> <span class="identifier">configuration</span> <span class="identifier">checks</span>
|
||||
|
||||
<span class="special">-</span> <span class="identifier">has_icu</span> <span class="identifier">builds</span> <span class="special">:</span> <span class="identifier">yes</span>
|
||||
</pre>
|
||||
<p>
|
||||
Whick means that ICU has been found, and support for it will be enabled in
|
||||
the library build.
|
||||
</p>
|
||||
<div class="tip"><table border="0" summary="Tip">
|
||||
<tr>
|
||||
<td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="../../../../../doc/src/images/tip.png"></td>
|
||||
<th align="left">Tip</th>
|
||||
</tr>
|
||||
<tr><td align="left" valign="top"><p>
|
||||
If you don't want the regex library to use ICU then build with the "--disable-icu"
|
||||
command line option.
|
||||
</p></td></tr>
|
||||
</table></div>
|
||||
<p>
|
||||
If instead you see:
|
||||
</p>
|
||||
<pre class="programlisting"><span class="identifier">Performing</span> <span class="identifier">configuration</span> <span class="identifier">checks</span>
|
||||
|
||||
<span class="special">-</span> <span class="identifier">has_icu</span> <span class="identifier">builds</span> <span class="special">:</span> <span class="identifier">no</span>
|
||||
</pre>
|
||||
<p>
|
||||
Then ICU was not found and support for it will not be compiled into the library.
|
||||
If you think that it should have been found, then you will need to take a look
|
||||
at the contents of the file <span class="emphasis"><em>boost-root/bin.v2/config.log</em></span>
|
||||
for the actual error messages obtained when the build carried out the configuration
|
||||
check. You will then need to fix these errors by ensuring your compiler gets
|
||||
invoked with the correct options, for example:
|
||||
</p>
|
||||
<pre class="programlisting">bjam include=some-include-path --toolset=toolset-name install</pre>
|
||||
<p>
|
||||
will add "some-include-path" to your compilers header include path,
|
||||
or if ICU has been built with non-standard names for it's binaries, then:
|
||||
</p>
|
||||
<pre class="programlisting">bjam -sICU_LINK="linker-options-for-icu" --toolset=toolset-name install</pre>
|
||||
<p>
|
||||
Will use <span class="emphasis"><em>"linker-options-for-icu"</em></span> when linking
|
||||
the library rather than the default ICU binary names.
|
||||
</p>
|
||||
<p>
|
||||
Most of the information you will need is in the getting started guide, the
|
||||
only additional step you need to take is to tell bjam that you want Boost.Regex
|
||||
to use ICU and optionally to tell bjam where ICU is located.
|
||||
You might also need to use the options "cxxflags<code class="literal">-option"
|
||||
and "linkflags</code>-option" to set compiler and linker specific
|
||||
options.
|
||||
</p>
|
||||
<div class="important"><table border="0" summary="Important">
|
||||
<tr>
|
||||
<td rowspan="2" align="center" valign="top" width="25"><img alt="[Important]" src="../../../../../doc/src/images/important.png"></td>
|
||||
<th align="left">Important</th>
|
||||
</tr>
|
||||
<tr><td align="left" valign="top"><p>
|
||||
Configuration results are cached - if you try rebuilding with different compiler
|
||||
options then add an "-a" to the bjam command line to force all
|
||||
targets to be rebuilt.
|
||||
</p></td></tr>
|
||||
</table></div>
|
||||
<p>
|
||||
If you're building on a Unix-like platform, and ICU is already installed in
|
||||
your compilers search path (with an install prefix of <code class="computeroutput"><span class="special">/</span><span class="identifier">usr</span></code> or <code class="computeroutput"><span class="special">/</span><span class="identifier">usr</span><span class="special">/</span><span class="identifier">local</span></code>
|
||||
for example), then set the environment variable <code class="computeroutput"><span class="identifier">HAVE_ICU</span></code>
|
||||
to enable ICU support. For example you might build with the command line:
|
||||
</p>
|
||||
<pre class="programlisting">bjam -sHAVE_ICU=1 --toolset=toolset-name install</pre>
|
||||
<p>
|
||||
If ICU is not already in your compiler's path then you need to set the environment
|
||||
variable <code class="computeroutput"><span class="identifier">ICU_PATH</span></code> to point
|
||||
to the root directory of your ICU installation, for example if ICU was installed
|
||||
to <code class="computeroutput"><span class="special">/</span><span class="identifier">usr</span><span class="special">/</span><span class="identifier">local</span><span class="special">/</span><span class="identifier">icu</span><span class="special">/</span><span class="number">3.3</span></code>
|
||||
you might use:
|
||||
</p>
|
||||
<pre class="programlisting">bjam -sICU_PATH=/usr/local/icu/3.3 --toolset=toolset-name install</pre>
|
||||
<p>
|
||||
Note that ICU is a C++ library just like Boost is, as such your copy of ICU
|
||||
must have been built with the same C++ compiler (and compiler version) that
|
||||
you are using to build Boost. Boost.Regex will not work correctly unless you
|
||||
ensure that this is the case: it is up to you to ensure that the version of
|
||||
ICU you are using is binary compatible with the toolset you use to build Boost.
|
||||
If ICU is not already in your compiler's path, but instead headers, libraries
|
||||
and binaries are located at <span class="emphasis"><em>path-to-icu/include</em></span>, <span class="emphasis"><em>path-to-icu/lib</em></span>
|
||||
and <span class="emphasis"><em>path-to-icu/bin</em></span> respectively then you need to set
|
||||
the environment variable <code class="computeroutput"><span class="identifier">ICU_PATH</span></code>
|
||||
to point to the root directory of your ICU installation: this typically happens
|
||||
if you're building with MSVC. For example if ICU was installed to <code class="computeroutput"><span class="identifier">c</span><span class="special">:\</span><span class="identifier">download</span><span class="special">\</span><span class="identifier">icu</span></code> you
|
||||
might use:
|
||||
</p>
|
||||
<pre class="programlisting">bjam -sICU_PATH=c:\download\icu --toolset=toolset-name install</pre>
|
||||
<div class="important"><table border="0" summary="Important">
|
||||
<tr>
|
||||
<td rowspan="2" align="center" valign="top" width="25"><img alt="[Important]" src="../../../../../doc/src/images/important.png"></td>
|
||||
<th align="left">Important</th>
|
||||
</tr>
|
||||
<tr><td align="left" valign="top"><p>
|
||||
ICU is a C++ library just like Boost is, as such your copy of ICU must have
|
||||
been built with the same C++ compiler (and compiler version) that you are
|
||||
using to build Boost. Boost.Regex will not work correctly unless you ensure
|
||||
that this is the case: it is up to you to ensure that the version of ICU
|
||||
you are using is binary compatible with the toolset you use to build Boost.
|
||||
</p></td></tr>
|
||||
</table></div>
|
||||
<a name="boost_regex.install.building_via_makefiles"></a><h5>
|
||||
<a name="id1015153"></a>
|
||||
<a name="id903566"></a>
|
||||
<a class="link" href="install.html#boost_regex.install.building_via_makefiles">Building via makefiles</a>
|
||||
</h5>
|
||||
<a name="boost_regex.install.borland_c___builder_"></a><h6>
|
||||
<a name="id1015166"></a>
|
||||
<a name="id903579"></a>
|
||||
<a class="link" href="install.html#boost_regex.install.borland_c___builder_">Borland C++ Builder:</a>
|
||||
</h6>
|
||||
<div class="itemizedlist"><ul type="disc">
|
||||
@ -165,7 +219,7 @@
|
||||
a lot in compile times!
|
||||
</p>
|
||||
<a name="boost_regex.install.microsoft_visual_c___6__7__7_1_and_8"></a><h5>
|
||||
<a name="id1015416"></a>
|
||||
<a name="id903829"></a>
|
||||
<a class="link" href="install.html#boost_regex.install.microsoft_visual_c___6__7__7_1_and_8">Microsoft
|
||||
Visual C++ 6, 7, 7.1 and 8</a>
|
||||
</h5>
|
||||
@ -253,7 +307,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<a name="boost_regex.install.gcc_2_95_and_later_"></a><h6>
|
||||
<a name="id1015629"></a>
|
||||
<a name="id904043"></a>
|
||||
<a class="link" href="install.html#boost_regex.install.gcc_2_95_and_later_">GCC(2.95 and later)</a>
|
||||
</h6>
|
||||
<p>
|
||||
@ -302,7 +356,7 @@
|
||||
see the <a href="../../../../config/index.html" target="_top">config library documentation</a>.
|
||||
</p>
|
||||
<a name="boost_regex.install.sun_workshop_6_1"></a><h6>
|
||||
<a name="id1015755"></a>
|
||||
<a name="id904169"></a>
|
||||
<a class="link" href="install.html#boost_regex.install.sun_workshop_6_1">Sun Workshop 6.1</a>
|
||||
</h6>
|
||||
<p>
|
||||
@ -347,7 +401,7 @@
|
||||
will build v9 variants of the regex library named libboost_regex_v9.a etc.
|
||||
</p>
|
||||
<a name="boost_regex.install.makefiles_for_other_compilers"></a><h6>
|
||||
<a name="id1015899"></a>
|
||||
<a name="id904313"></a>
|
||||
<a class="link" href="install.html#boost_regex.install.makefiles_for_other_compilers">Makefiles
|
||||
for Other compilers</a>
|
||||
</h6>
|
||||
@ -358,7 +412,7 @@
|
||||
</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 © 1998 -2007 John Maddock<p>
|
||||
<td align="right"><div class="copyright-footer">Copyright © 1998 -2010 John Maddock<p>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
|
||||
</p>
|
||||
|
Reference in New Issue
Block a user