forked from boostorg/regex
Merge fixes from Trunk - mainly warning suppression.
[SVN r65720]
This commit is contained in:
@ -34,34 +34,64 @@ please refer to the
|
||||
|
||||
[h4 Building With Unicode and ICU Support]
|
||||
|
||||
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:
|
||||
|
||||
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.
|
||||
Performing configuration checks
|
||||
|
||||
If you're building on a Unix-like platform, and ICU is already installed in
|
||||
your compilers search path (with an install prefix of `/usr` or
|
||||
`/usr/local` for example), then set the environment variable `HAVE_ICU` to
|
||||
enable ICU support. For example you might build with the command line:
|
||||
- has_icu builds : yes
|
||||
|
||||
[pre bjam -sHAVE_ICU=1 --toolset=toolset-name install]
|
||||
Whick means that ICU has been found, and support for it will be enabled
|
||||
in the library build.
|
||||
|
||||
If ICU is not already in your compiler's path then you need to set the
|
||||
environment variable `ICU_PATH` to point to the root directory of your
|
||||
ICU installation, for example if ICU was installed to `/usr/local/icu/3.3` you
|
||||
[tip If you don't want the regex library to use ICU then build with the
|
||||
"--disable-icu" command line option.]
|
||||
|
||||
If instead you see:
|
||||
|
||||
Performing configuration checks
|
||||
|
||||
- has_icu builds : no
|
||||
|
||||
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 ['boost-root/bin.v2/config.log] 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:
|
||||
|
||||
[pre bjam include=some-include-path --toolset=toolset-name install]
|
||||
|
||||
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:
|
||||
|
||||
[pre bjam -sICU_LINK="linker-options-for-icu" --toolset=toolset-name install]
|
||||
|
||||
Will use ['"linker-options-for-icu"] when linking the library rather than the default
|
||||
ICU binary names.
|
||||
|
||||
You might also need to use the options "cxxflags=-option" and "linkflags=-option" to set compiler and linker
|
||||
specific options.
|
||||
|
||||
[important 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.]
|
||||
|
||||
If ICU is not already in your compiler's path, but instead headers, libraries and binaries
|
||||
are located at ['path-to-icu/include], ['path-to-icu/lib] and ['path-to-icu/bin] respectively
|
||||
then you need to set the environment variable `ICU_PATH` 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 `c:\download\icu` you
|
||||
might use:
|
||||
|
||||
[pre bjam -sICU_PATH=/usr/local/icu/3.3 --toolset=toolset-name install]
|
||||
[pre bjam -sICU_PATH=c:\download\icu --toolset=toolset-name install]
|
||||
|
||||
Note that ICU is a C++ library just like Boost is, as such your copy of
|
||||
[important 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.
|
||||
of ICU you are using is binary compatible with the toolset you use to build Boost.]
|
||||
|
||||
[h4 Building via makefiles]
|
||||
|
||||
|
Reference in New Issue
Block a user