简体   繁体   中英

C++ boost build errors

we use boost1.46.1 in our c++ project. When I am building my c++ project using cmake, I am getting following errors.

I am not sure why I am getting this error. Can any one please hemp me to fix the following errors?

/usr/bin/ld: warning: libicuuc.so.44, needed by /efs/dist/fsf/boost/1.46.1-build001/.exec/x86-32.rhel.5/rh346/lib/libboost_regex.so, not found (try using -rpath or -rpath-link)
/usr/bin/ld: warning: libicui18n.so.44, needed by /efs/dist/fsf/boost/1.46.1-build001/.exec/x86-32.rhel.5/rh346/lib/libboost_regex.so, not found (try using -rpath or -rpath-link)
/usr/bin/ld: warning: libicudata.so.44, needed by /efs/dist/fsf/boost/1.46.1-build001/.exec/x86-32.rhel.5/rh346/lib/libboost_regex.so, not found (try using -rpath or -rpath-link)
/efs/dist/fsf/boost/1.46.1-build001/.exec/x86-32.rhel.5/rh346/lib/libboost_regex.so: undefined reference to `u_isspace_44'
/efs/dist/fsf/boost/1.46.1-build001/.exec/x86-32.rhel.5/rh346/lib/libboost_regex.so: undefined reference to `icu_44::Collator::createInstance(icu_44::Locale const&, UErrorCode&)'
/efs/dist/fsf/boost/1.46.1-build001/.exec/x86-32.rhel.5/rh346/lib/libboost_regex.so: undefined reference to `u_charFromName_44'
/efs/dist/fsf/boost/1.46.1-build001/.exec/x86-32.rhel.5/rh346/lib/libboost_regex.so: undefined reference to `u_charType_44'
/efs/dist/fsf/boost/1.46.1-build001/.exec/x86-32.rhel.5/rh346/lib/libboost_regex.so: undefined reference to `u_digit_44'
/efs/dist/fsf/boost/1.46.1-build001/.exec/x86-32.rhel.5/rh346/lib/libboost_regex.so: undefined reference to `u_tolower_44'
/efs/dist/fsf/boost/1.46.1-build001/.exec/x86-32.rhel.5/rh346/lib/libboost_regex.so: undefined reference to `icu_44::Locale::~Locale()'
/efs/dist/fsf/boost/1.46.1-build001/.exec/x86-32.rhel.5/rh346/lib/libboost_regex.so: undefined reference to `u_isblank_44'
/efs/dist/fsf/boost/1.46.1-build001/.exec/x86-32.rhel.5/rh346/lib/libboost_regex.so: undefined reference to `icu_44::Locale::Locale()'
/efs/dist/fsf/boost/1.46.1-build001/.exec/x86-32.rhel.5/rh346/lib/libboost_regex.so: undefined reference to `icu_44::Locale::Locale(icu_44::Locale const&)'
collect2: ld returned 1 exit status

http://www.boost.org/doc/libs/1_47_0/libs/regex/doc/html/boost_regex/install.html

It looks like boost::regex sometimes depends on the ICU library. You can either link against that library, or you can follow the instructions in the link to disable ICU.

您的Boost.Regex具有Unicode支持,您也需要链接到ICU

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM