@sba

Проблема с libboost-regex1.54

Приветствую друзья.

Использую Debian GNU/Linux testing (jessie)
readelf -d /usr/lib/libboost_regex.so
Динамический раздел со смещением 0x10a720 содержит 33 элементов:
  Тег        Тип                          Имя/Знач
 0x0000000000000001 (NEEDED)             Совм. исп. библиотека: [libicuuc.so.48]
 0x0000000000000001 (NEEDED)             Совм. исп. библиотека: [libicui18n.so.48]
 0x0000000000000001 (NEEDED)             Совм. исп. библиотека: [libicudata.so.48]
...

libboost-regex1.54.0 зависит от libicu48 (>= 4.8-1)

Установлены libicu48 (4.8.1.1-14) и libicu52 (52.1-2).

При подключении -llibicuuc (libicu52) линкер ругается:
ccache g++     -o dist/Debug/GNU-Linux-x86/gs build/Debug/GNU-Linux-x86/src/CConfig.o build/Debug/GNU-Linux-x86/src/CController.o build/Debug/GNU-Linux-x86/src/CDirMonitor.o build/Debug/GNU-Linux-x86/src/CHtmlController.o build/Debug/GNU-Linux-x86/src/CLogger.o build/Debug/GNU-Linux-x86/src/CNodesCache.o build/Debug/GNU-Linux-x86/src/CScheduler.o build/Debug/GNU-Linux-x86/src/CSession.o build/Debug/GNU-Linux-x86/src/CSessionsMngr.o build/Debug/GNU-Linux-x86/src/CThreadContext.o build/Debug/GNU-Linux-x86/src/CUsersCache.o build/Debug/GNU-Linux-x86/src/CViewsCache.o build/Debug/GNU-Linux-x86/src/CWorker.o build/Debug/GNU-Linux-x86/src/controllers/CControllerChat.o build/Debug/GNU-Linux-x86/src/controllers/CControllerMain.o build/Debug/GNU-Linux-x86/src/controllers/CControllerMap.o build/Debug/GNU-Linux-x86/src/controllers/CControllerUser.o build/Debug/GNU-Linux-x86/src/filesystem.o build/Debug/GNU-Linux-x86/src/main.o build/Debug/GNU-Linux-x86/src/models/CAuth.o build/Debug/GNU-Linux-x86/src/models/CChat.o build/Debug/GNU-Linux-x86/src/models/CNode.o build/Debug/GNU-Linux-x86/src/models/CObject.o build/Debug/GNU-Linux-x86/src/models/CPagination.o build/Debug/GNU-Linux-x86/src/models/CUser.o build/Debug/GNU-Linux-x86/src/models/CWorld.o build/Debug/GNU-Linux-x86/src/odb/CDboChatMessage-odb.o build/Debug/GNU-Linux-x86/src/odb/CDboNode-odb.o build/Debug/GNU-Linux-x86/src/odb/CDboSessStart-odb.o build/Debug/GNU-Linux-x86/src/odb/CDboSession-odb.o build/Debug/GNU-Linux-x86/src/odb/CDboUser-odb.o -lboost_system -lboost_filesystem -lboost_thread -lboost_date_time -lboost_chrono -lboost_regex -lpion -lctpp2 -llog4cpp -lodb -lodb-mysql -lodb-boost -lcrypto++ -lconfig++ -ljsoncpp -lssl -lcrypto -licuuc
/usr/bin/ld: warning: libicuuc.so.48, needed by /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib/libboost_regex.so, may conflict with libicuuc.so.52
build/Debug/GNU-Linux-x86/src/models/CWorld.o: In function `boost::re_detail::icu_regex_traits_implementation::transform(int const*, int const*) const':
/usr/include/boost/regex/icu.hpp:71: undefined reference to `boost::re_detail::icu_regex_traits_implementation::do_transform(int const*, int const*, icu_52::Collator const*) const'
build/Debug/GNU-Linux-x86/src/models/CWorld.o: In function `boost::re_detail::icu_regex_traits_implementation::transform_primary(int const*, int const*) const':
/usr/include/boost/regex/icu.hpp:75: undefined reference to `boost::re_detail::icu_regex_traits_implementation::do_transform(int const*, int const*, icu_52::Collator const*) const'
если выбрать 48 версию:
ccache g++     -o dist/Debug/GNU-Linux-x86/gs build/Debug/GNU-Linux-x86/src/CConfig.o build/Debug/GNU-Linux-x86/src/CController.o build/Debug/GNU-Linux-x86/src/CDirMonitor.o build/Debug/GNU-Linux-x86/src/CHtmlController.o build/Debug/GNU-Linux-x86/src/CLogger.o build/Debug/GNU-Linux-x86/src/CNodesCache.o build/Debug/GNU-Linux-x86/src/CScheduler.o build/Debug/GNU-Linux-x86/src/CSession.o build/Debug/GNU-Linux-x86/src/CSessionsMngr.o build/Debug/GNU-Linux-x86/src/CThreadContext.o build/Debug/GNU-Linux-x86/src/CUsersCache.o build/Debug/GNU-Linux-x86/src/CViewsCache.o build/Debug/GNU-Linux-x86/src/CWorker.o build/Debug/GNU-Linux-x86/src/controllers/CControllerChat.o build/Debug/GNU-Linux-x86/src/controllers/CControllerMain.o build/Debug/GNU-Linux-x86/src/controllers/CControllerMap.o build/Debug/GNU-Linux-x86/src/controllers/CControllerUser.o build/Debug/GNU-Linux-x86/src/filesystem.o build/Debug/GNU-Linux-x86/src/main.o build/Debug/GNU-Linux-x86/src/models/CAuth.o build/Debug/GNU-Linux-x86/src/models/CChat.o build/Debug/GNU-Linux-x86/src/models/CNode.o build/Debug/GNU-Linux-x86/src/models/CObject.o build/Debug/GNU-Linux-x86/src/models/CPagination.o build/Debug/GNU-Linux-x86/src/models/CUser.o build/Debug/GNU-Linux-x86/src/models/CWorld.o build/Debug/GNU-Linux-x86/src/odb/CDboChatMessage-odb.o build/Debug/GNU-Linux-x86/src/odb/CDboNode-odb.o build/Debug/GNU-Linux-x86/src/odb/CDboSessStart-odb.o build/Debug/GNU-Linux-x86/src/odb/CDboSession-odb.o build/Debug/GNU-Linux-x86/src/odb/CDboUser-odb.o -lboost_system -lboost_filesystem -lboost_thread -lboost_date_time -lboost_chrono -lboost_regex -lpion -lctpp2 -llog4cpp -lodb -lodb-mysql -lodb-boost -lcrypto++ -lconfig++ -ljsoncpp -lssl -lcrypto /usr/lib/x86_64-linux-gnu/libicuuc.so.48
build/Debug/GNU-Linux-x86/src/models/CWorld.o: In function `boost::re_detail::icu_regex_traits_implementation::transform(int const*, int const*) const':
/usr/include/boost/regex/icu.hpp:71: undefined reference to `boost::re_detail::icu_regex_traits_implementation::do_transform(int const*, int const*, icu_52::Collator const*) const'
build/Debug/GNU-Linux-x86/src/models/CWorld.o: In function `boost::re_detail::icu_regex_traits_implementation::transform_primary(int const*, int const*) const':
/usr/include/boost/regex/icu.hpp:75: undefined reference to `boost::re_detail::icu_regex_traits_implementation::do_transform(int const*, int const*, icu_52::Collator const*) const'
build/Debug/GNU-Linux-x86/src/models/CWorld.o: In function `boost::icu_regex_traits::translate_nocase(int) const':
/usr/include/boost/regex/icu.hpp:130: undefined reference to `u_tolower_52'

Подскажите, пожалуйста, как это побороть и скомпилировать код.
  • Вопрос задан
  • 3057 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы