问题描述
问题很简单。自从我使用 M1 MacBook 以来,我已经使用 Homebrew 安装了 Python 和 Cairo。尝试导入包时,出现此错误:
>>> import cairo
Traceback (most recent call last):
File "<stdin>",line 1,in <module>
File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/cairo/__init__.py",in <module>
from ._cairo import * # noqa: F401,F403
ImportError: dlopen(/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/cairo/_cairo.cpython-39-darwin.so,2): Symbol not found: _cairo_append_path
Referenced from: /Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/cairo/_cairo.cpython-39-darwin.so
Expected in: flat namespace
in /Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/cairo/_cairo.cpython-39-darwin.so
提前致谢。
解决方法
在他们的 GitHub 上查看 this issue,特别是 this comment,您可以尝试一些事情:
- 如果您还没有使用 Python 3.9(并在终端中使用
python3
) - 卸载您现在拥有的
pycairo
并使用 Homebrew 安装py3cairo
- 使用
python3
和--system-site-package
选项创建一个新的 venv,即python3 -m venv --system-site-package path/to/env
查看评论本身,如果其中任何一条有效,请告诉我。这个问题似乎没有一个明确的解决方案。