
The actual message is /usr/bin/ld: skipping incompatible /home/qhwang/mylibs_32/boost/lib/libboost_regex-gcc41-mt.a when searching for -lboost_regex-gcc41-mt /usr/bin/ld: cannot find -lboost_regex-gcc41-mt The linker skipped incompatibale 64bits regex which I specified in Makefile and tried to find the compatible 32 bits regex in system lib directory. But I didn't install regex there. On Sat, Apr 11, 2009 at 2:00 AM, Vladimir Prus <vladimir@codesourcery.com>wrote:
Qihong Wang wrote:
Hi,
I feel awkward to post almost the same question again. But I really have a problem when I build 32 bits boost.regex with icu support on a 64 bits Linux machine.
If I build 64 bits regex with icu support, they are fine. If I build 32 bits regex without icu support, they are fine. When I tried to build 32 bits regex with icu support, I used command for ICU building
I addition to what Steven said:
./runConfigureICU Linux --disable-64bit-libs ./configure --prefix=/home/qhwang/mylibs_32/icu --disable-64bit-libs
There's no such parameter to Boost's configure.
I checked icu libraries they are not dependent on 64bits libraries. So I'm confident they are 32bits. But when I use the command to build 32 bits regex ./bjam --prefix=/home/qhwang/mylibs/boost/ --with-regex --build-dir=/tmp/boost_build/ --build-type=complete --address-mode=32 --architecture=x86 -sHAVE_ICU=1 -sICU_PATH=/home/qhwang/mylibs/icu/ install
Bjam showed ...failed updating 4 targets... ...skipped 12 targets... ...updated 7477 targets... there were only static libraries built. When I linked them to my program which were also compiled in 32 bits, the linker complained the libraries were incompatable.
Do you mean that linker emitted a message that say, literally:
"the libraries are incompatible"
? I somehow doubt this is the case.
- Volodya
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost