8

当我在 mac 上启动我的烧瓶 python3 应用程序时,我遇到了这个错误。

OSError: 无法加载库 'gobject-2.0-0': dlopen(gobject-2.0-0, 2): image not found。此外,ctypes.util.find_library() 无法找到名为“gobject-2.0-0”的库

我在我的项目中使用 weasyprint 导致了这个问题。

我尝试安装 glib,它已安装在我的系统中

4

3 回答 3

13

我刚刚在我的 Mac M1 上解决了同样的问题。

问题是没有创建到库的符号链接(不能说安装时应该由 homebrew 还是 weasyprint 完成)。

所以,我不得不手动完成

sudo ln -s /opt/homebrew/opt/glib/lib/libgobject-2.0.0.dylib /usr/local/lib/gobject-2.0
sudo ln -s /opt/homebrew/opt/pango/lib/libpango-1.0.dylib /usr/local/lib/pango-1.0
sudo ln -s /opt/homebrew/opt/harfbuzz/lib/libharfbuzz.dylib /usr/local/lib/harfbuzz
sudo ln -s /opt/homebrew/opt/fontconfig/lib/libfontconfig.1.dylib /usr/local/lib/fontconfig-1
sudo ln -s /opt/homebrew/opt/pango/lib/libpangoft2-1.0.dylib /usr/local/lib/pangoft2-1.0

这解决了问题。

为了测试 Python 是否可以找到您可以运行的库

from ctypes.util import find_library

find_library('gobject-2.0')  # Pass any other lib name as an argument
于 2021-09-23T07:00:49.727 回答
0

如果您weasyprint在虚拟环境中安装了软件包,但没有为此安装一些必需的软件包,那么这可能就是原因。实际上,就我而言。

如果你是 mac 用户,你需要 install pangoand libffi,更不用说 python 了。

mac上的安装指南

brew install python pango libffi
(venv) pip install weasyprint
于 2022-01-03T14:28:05.247 回答
0

自制软件更新后我遇到了同样的问题。原来这个问题是因为旧的pangolib版本。

我做了brew install pango

这个pango从 1.48.2 -> 1.50.4 升级的 lib 在内部安装了 gobject 的最新版本作为 dep。我的问题得到了解决。

于 2022-02-28T07:04:54.893 回答