5
私が持っています。それは私のために良い小さなlibtest.so
ファイルを出力します。それをテストするために、私はそうのようなPythonスクリプトを持っている:libtest.so
と同じディレクトリにこれを実行Boost.PythonとCMakeのリンクと読み込みエラーが
import libtest
print(libtest.greeting())
は、次のエラーを与える:
Traceback (most recent call last):
File "test.py", line 1, in <module>
import libtest
ImportError: /home/travis/projects/boost-python-test/build/libtest.so: undefined symbol: _ZNK5boost6python7objects21py_function_impl_base9max_arityEv
む〜を!
/usr/bin/c++ -fPIC -shared -Wl,-soname,libtest.so -o libtest.so CMakeFiles/test.dir/main.cpp.o -L/usr/lib/libpython2.7.so
私はそのライン上-L/usr/lib/libboost_python-mt-py27.a
が表示されていない理由として、精神的なブロックを持っている:問題はmake VERBOSE=1
とかなり明確である...私のlibtest.so
を作成する行は次のようになります。それは明らかにfind_package(PythonLibs ...)
のために働いた。私はいくつかのCMakeの新しさのために不足している。
あなた自身で見つけた後に回答を投稿してくれてありがとう、私の問題を解決しました。 –