首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >django OSError:没有在windows上找到名为"cairo“的库

问django OSError:没有在windows上找到名为"cairo“的库
EN

Stack Overflow用户
提问于 2019-12-25 19:46:53
回答 8查看 44.9K关注 0票数 18

当我运行Django服务器时,我看到了这个问题!!

代码语言:javascript
复制
OSError: no library called "cairo" was found

no library called "libcairo-2" was found

cannot load library 'libcairo.so': error 0x7e

cannot load library 'libcairo.2.dylib': error 0x

cannot load library 'libcairo-2.dll': error 0x7e
EN

回答 8

Stack Overflow用户

回答已采纳

发布于 2019-12-27 05:20:47

WeasyPrint需要Pango、cairo和GDK库.它们是GTK+ (以前称为GIMP )的一部分,必须单独安装。

安装GTK+库后,请执行以下操作:

代码语言:javascript
复制
python -m weasyprint http://weasyprint.org weasyprint.pdf
票数 10
EN

Stack Overflow用户

发布于 2020-07-13 01:36:16

安装GTK+对我不起作用。我使用UniConverter2.0解决了这个问题。我的环境是

  • Python 3.7
  • Windows 10 x64
  1. 安装headless.msi,
  2. 查找UniConverter安装路径下的"dll“子目录。(在我的例子中,C:\Program Files\UniConvertor-2.0rc4\dlls)
  3. 将此"dll“路径添加到系统路径。
  4. 关闭VSCode并重新打开项目。
  5. 尝试再次运行服务器。享受吧!
票数 12
EN

Stack Overflow用户

发布于 2020-08-04 20:31:02

从Python3.8开始,需要单独添加dll。添加了GTK+,MSYS2,Visual编译器和统一转换器。但是,似乎什么都起不到作用。最后,在将调用add_dll_directory的脚本放入之后,它就可以工作了。

代码语言:javascript
复制
import os

def set_dll_search_path():
   # Python 3.8 no longer searches for DLLs in PATH, so we have to add
   # everything in PATH manually. Note that unlike PATH add_dll_directory
   # has no defined order, so if there are two cairo DLLs in PATH we
   # might get a random one.
   if os.name != "nt" or not hasattr(os, "add_dll_directory"):
       return
   for p in os.environ.get("PATH", "").split(os.pathsep):
       try:
           os.add_dll_directory(p)
       except OSError:
           pass


set_dll_search_path()

来源:PyCairo WindowsPython3.8导入问题

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59481394

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档