5

私はグーグルのRE2ライブラリをテストするために次のコードを使用しています

int main()
{
  int r = RE2::FullMatch("hello", "h.*o");
  cout <<" match = " << r << endl;
  return 0;
}

次のコマンドを使用してコンパイルしています-

g++ -lre2 -o retest retest.cc

正常にコンパイルされていますが、。/ retestを使用して再テストを実行しようとすると、次のエラーがスローされます-

error while loading shared libraries: libre2.so.0: cannot open shared object file: No such file or directory

チェックしたところ、libre2.so.0ライブラリがuser / local/libディレクトリとre2/obj/soディレクトリに存在します。では、なぜこのエラーが発生するのでしょうか。追加する詳細を忘れているのでしょうか。

4

2 に答える 2

5

実行sudo ldconfigすることはトリックをしました。

于 2011-11-30T14:48:20.437 に答える
1

古典的な落とし穴:

g++ -o retest retest.cc -lre2 

ライブラリは最後にする必要があります

正直に言うと、リンク エラーがないことに驚いています質問の情報を見逃した場合に備えて、私はそれを保管します

于 2011-11-30T09:41:14.587 に答える