2

Boostの最新バージョンをダウンロードし、Ubuntu 10.04でBoost.pythonチュートリアルを起動して実行しようとしています:http ://www.boost.org/doc/libs/1_43_0/libs/python/doc/tutorial/ doc / html / python / hello.html

正しいディレクトリに移動し、「bjam」を実行すると、デフォルト設定を使用してコンパイルされました。私はまだbjam設定ファイルを作成していません。コンパイルは機能したように見えますが、Pythonスクリプトにファイルを含める方法がわかりません。python hello worldスクリプトを実行しようとすると、次のエラーが発生します。

Traceback (most recent call last):
  File "./hello.py", line 6, in <module>
    import hello_ext
ImportError: libboost_python.so.1.43.0: cannot open shared object file: No such file or  directory

誰が何が起こっているのか知っていますか?

4

3 に答える 3

5

Boostをどのようにインストールしましたか?次のものを使用していると仮定します:http ://www.boost.org/doc/libs/1_43_0/more/getting_started/unix-variants.html#easy-build-and-install

liboost_pythonシャードライブラリは/usr/ local/libにインストールされます

hello.pyの例を実行するには、次のことを試してください。

LD_LIBRARY_PATH=/usr/local/lib python ./hello.py
于 2010-06-09T21:08:50.243 に答える
2

Boost Pythonライブラリの経験はありませんが、エラーが示すように、libboost_python共有オブジェクトを見つけることができません。

ここにはいくつかのオプションがあります(もっとあるかもしれません):

  1. .soを/usr/ local/libに配置します。
  2. .soを/usr/libに配置します。これはおそらく悪い考えです。
  3. 実行export LD_LIBRARY_PATH=/path_to_so/前に実行します。
于 2010-06-09T20:32:54.027 に答える
0

Boostをインストールしましたか?プログラムを実行するために必要な場所にライブラリをインストールするだけでは、コンパイルするだけでは不十分です。

于 2010-06-09T20:28:26.877 に答える