【发布时间】:2018-06-11 11:13:18
【问题描述】:
尝试在 Python 2.7 中导入 gtk 时出现以下错误:
>>> import gtk
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "gtk/__init__.py", line 40, in <module>
from gtk import _gtk
File "/usr/lib/python2.7/site-packages/cairo/__init__.py", line 1, in <module>
from ._cairo import * # noqa: F401,F403
ImportError: /usr/lib/python2.7/site-packages/cairo/_cairo.so: undefined symbol: cairo_tee_surface_index
尝试从 Python 3.6 导入 cairo 时出现以下错误:
>>> import cairo
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python3.6/site-packages/cairo/__init__.py", line 1, in <module>
from ._cairo import * # noqa: F401,F403
ImportError: /usr/lib/python3.6/site-packages/cairo/_cairo.cpython-36m-x86_64-linux-gnu.so: undefined symbol: cairo_tee_surface_index
我按照 BLFS 书中给出的顺序编译和构建模块。 我还安装了书中给出的启用 tee 的 cairo。
我的系统是 LFS,内核版本 4.14.4,Python 2.7.14 和 Python 3.6.4。
编辑:下载源代码并执行“卸载”,然后重新安装。现在我可以毫无错误地导入 cairo。
【问题讨论】:
-
@KarlRichter 我刚刚重新编译了它,它工作了。没有一个答案真的对我有用。
标签: linux python-2.7 pygtk python-3.6 pycairo