
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