无法加载库文件:cairo

4

我在运行以下命令时一直遇到这个错误:

python -m weasyprint http://weasyprint.org weasyprint.pdf

错误:

  raise OSError("dlopen() failed to load a library: %s" % ' / '.join(names))
OSError: dlopen() failed to load a library: cairo / cairo-2 / cairo-gobject-2 / cairo.so.2

我使用pip install weasyprint安装了Weasyprint。要安装cairo,我使用了这份文档:https://weasyprint.readthedocs.io/en/latest/install.html

但是,在指南的最后,当我尝试运行WHERE libcairo-2.dll时,我收到了一个not found错误。

我一直按照指南逐步操作,但它不起作用,我一直收到相同的错误,我搜索了各种解决方案,但没有一个能修复这个问题。有什么建议吗?提前感谢您的帮助。

2个回答

8

为了使weasyprint能够生成最终的PDF,您还需要安装GTK+库(不仅仅是weasyprint)。

您可以在weasyprint的网站上找到适用于您操作系统的安装说明。

亲爱的Windows用户,请仔细按照以下步骤进行操作。

一定要认真。别偷懒。

除了正确的Python安装和一些Python包外,WeasyPrint还需要Pango、cairo和GDK-PixBuf库。它们用于图形处理:文本和图像渲染。这些库不是Python包。它们是GTK+(以前称为GIMP Toolkit)的一部分,必须单独安装

如果您使用的是64位版本的Windows,则可以从这里获取GTK安装程序。安装完成后……然后运行:

python -m weasyprint http://weasyprint.org weasyprint.pdf

应该能如预期般工作。

0

macOS Monterey,我只需要运行brew install pango就解决了问题,它似乎安装了我所需的所有必要依赖项,包括Cairo。真是我的幸运日!


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接