无法加载库:cairo

时间:2019-06-21 13:14:19

标签: python python-3.x weasyprint

尝试运行以下命令时,我始终收到此错误:

m1 <-
gam(
 void_ratio ~ s(
 idx,
 bs = 'mrf',
 k =500,
 xt = list(nb = boroughs_nb),
 fx = TRUE),
 data = elections_df,
 method = 'REML', 
 control = gam.control(nthreads = 4),
 family = nb()
)

错误:

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 安装了Weasyprint。要安装cairo,我使用了以下文档:https://weasyprint.readthedocs.io/en/latest/install.html

但是,在指南结尾处,当我尝试运行pip install weasyprint时,出现了WHERE libcairo-2.dll错误。

我一直在逐步遵循指南,但仍无法正常工作,而且我一直遇到相同的错误,我一直在寻找各种解决方案,但都没有解决该问题的方法。有什么建议吗?预先感谢

1 个答案:

答案 0 :(得分:3)

您还需要安装GTK +库(不仅仅是weasyprint),以便weasyprint呈现最终的PDF。

您可以找到操作系统documented on weasyprint's website的安装说明。

  

尊敬的Windows用户,请仔细执行以下步骤。

     

非常小心。不要作弊。

     

除了正确的Python安装和一些Python软件包之外,   WeasyPrint需要Pango,cairo和GDK-PixBuf库。他们是   图形内容所需的:文本和图像渲染。这些   库不是Python软件包。它们是GTK +的一部分(以前   (称为GIMP工具包),,并且必须单独安装

如果您正在运行64位版本的Windows,则可以从here获取GTK安装程序。 安装完成后,然后运行

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

应能按预期工作。