3

Ubuntu 12.04 でProject-OSRMの最新 (4.1) バージョンをビルドしようとしていますが、Boost に関連するエラーがあります。

OSRM の古いバージョン (3.9) は、パッケージとして入手可能な Boost のバージョン (1.48) に依存していましたが、新しいバージョンには Boost >= 1.49 のバージョンが必要です。

そのため、 Boost 1_55_0 をソースからインストールし、この場所/usr/include/boost_1_55_0に設定しました。BOOST_ROOT

Project-OSRM を作成すると、次のエラーが表示されます。

Linking CXX executable osrm-datastore
/usr/bin/ld: warning: libicuuc.so.48, needed by /usr/include/boost_1_55_0/stage/lib/libboost_regex.so, not found (try using -rpath or -rpath-link)
/usr/bin/ld: warning: libicui18n.so.48, needed by /usr/include/boost_1_55_0/stage/lib/libboost_regex.so, not found (try using -rpath or -rpath-link)
/usr/include/boost_1_55_0/stage/lib/libboost_regex.so: undefined reference to `u_isspace_48'
/usr/include/boost_1_55_0/stage/lib/libboost_regex.so: undefined reference to `u_isblank_48'
/usr/include/boost_1_55_0/stage/lib/libboost_regex.so: undefined reference to `icu_48::Locale::~Locale()'
/usr/include/boost_1_55_0/stage/lib/libboost_regex.so: undefined reference to `u_tolower_48'
/usr/include/boost_1_55_0/stage/lib/libboost_regex.so: undefined reference to `icu_48::Locale::Locale()'
/usr/include/boost_1_55_0/stage/lib/libboost_regex.so: undefined reference to `u_digit_48'
/usr/include/boost_1_55_0/stage/lib/libboost_regex.so: undefined reference to `u_charFromName_48'
/usr/include/boost_1_55_0/stage/lib/libboost_regex.so: undefined reference to `icu_48::Locale::Locale(icu_48::Locale const&)'
/usr/include/boost_1_55_0/stage/lib/libboost_regex.so: undefined reference to `icu_48::Collator::createInstance(icu_48::Locale const&, UErrorCode&)'
/usr/include/boost_1_55_0/stage/lib/libboost_regex.so: undefined reference to `u_charType_48'
collect2: error: ld returned 1 exit status
make[2]: *** [osrm-datastore] Error 1
make[1]: *** [CMakeFiles/osrm-datastore.dir/all] Error 2
make: *** [all] Error 2

libicuuc.so.48libicui18n.so.48が欠けているように見えますが、実際には に存在し/usr/libます。

ここに私の質問があります:

  • どうやっlibicuuc.so.48libicui18n.so.48入ったの/usr/lib?それらは標準のUbuntuセットアップの一部ですか?
  • これは彼らの適切な場所ですか?はいの場合、なぜ「見つからない」のですか?
  • そうでない場合、それらを見つけるにはどこにいる必要がありますか??
  • グーグルで調べた後、設定LD_DEBUGしましfilesたが、その出力はあまり役に立ちません。でも、ここで生産できます。
4

0 に答える 0