我正在尝试python-chess
在 Ubuntu 13.04 上将软件包安装到 Python 3.3。这是 github 的链接(https://github.com/niklasf/python-chess),也可以使用pip
.
当我将它安装到 Python 2.7(使用pip
或使用setup.py
源代码)时,一切正常,但是当我尝试将其安装到 Python 3.3pip3
或使用 运行setup.py
时python3
,它似乎运行良好,但是当我实际尝试将其导入时python 3.3解释器,我得到以下信息:
>>> import chess
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python3.3/dist-packages/python_chess-0.0.4-py3.3-linux-i686.egg/chess/__init__.py", line 30, in <module>
from libchess import START_FEN
ImportError: /usr/lib/libboost_python-py27.so.1.53.0: undefined symbol: PyClass_Type
>>>
从这条消息看来,该库正在尝试boost-python
用于 Python 2.7,即使它是使用 Python 3.3 构建然后安装的。我已经boost-python
为 Python 2.7 和 Python 3.3 安装了包,所以我认为我需要一种让这个库使用/usr/lib/libboost_python-py33.so.1.53.0
文件的方法。
我怎样才能做到这一点?或者也许我的结论是错误的,在这种情况下,我该如何真正解决这个问题?