Boost logo

Boost :

Subject: Re: [boost] [Regex] Building Boost.Regex with ICU
From: Artyom (artyomtnk_at_[hidden])
Date: 2010-09-20 07:34:10


>
> Does the linker command show that it's being linked to ICU?
>

No. Libraries are not given during linking command

> Come to that if the compiler command line has BOOST_HAS_ICU set, then you
> *will* get compiler errors if it's not being built against ICU.

Not under ELF platform. Unlike with DLLs, you can create shared objects with
undefined symbols, you'll discover this when you'll try to link
libboost_regex.so to some executable.

i.e. this is legal.

    test.c

       void foo();
       void bar() { foo(); }

    gcc -shared -fPIC test.c -o libtest.so

> Stupid question, but are you sure that you're looking at the correct
> binaries?

Yep. stage/lib/libboost_regex.so

> > Version 1.44
> > ------------
> >
> > Build:
> >
> > bjam -d+2 -sHAVE_ICU=1 stage
>
> -sHAVE_ICU has no effect in 1.44 - it should detect and configure it
> automatically.
>
> When you build there should be a message something like:
>
> Performing configuration checks
>
> - has_icu builds : no

No, this message is not shown. I had also forgotten to mention one
parameter that I add "--with-regex" as I want boost_regex only

   bjam -d+2 -sHAVE_ICU=1 --with-regex stage

>
> And if you see a "no" here then look in bin.v2/config.log to see the actual
> error messages that caused the configure check to fail.

Ok I'll take a look on this file when I get home.

Thanks,
  Artyom

      


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk