3

サンドボックスcプログラムのコンパイル後に.outファイルを実行しようとすると、次のエラーが発生します。

    ./sandbox: error while loading shared libraries: libsandbox.so: cannot open shared object file: No such file or directory

私は何をしますか?

4

2 に答える 2

1

次のことを行います。

  1. まず、コピーした場所を見つけますlibsandbox.so。リンクに成功した場合は、どこかにある可能性があります。
  2. 次に、試してみてenv LD_LIBRARY_PATH=/directory/of/your/libsandbox/copy/ ./sandbox、それが機能するかどうかを確認します。
  3. 次に、ターゲット マシンで動作するように、プログラムをライブラリと共に展開する方法を決定します。多くの可能性があります。gcc -Wl,-rpath='$ORIGIN'リンクするとlibsandbox.so、実行可能ファイルのディレクトリからロードできるようになります。世話をするラッパースクリプトLD_LIBRARY_PATHは別の解決策です。libsandbox.so動的リンカーがそれを見つけることができる場所に置くことは別のものです。
于 2013-01-28T11:58:03.800 に答える