当我运行Django服务器时,我看到了这个问题!!
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
9条答案
按热度按时间zi8p0yeb1#
安装GTK+对我不起作用,我使用UniConverter2.0解决了这个问题。
1.安装uniconvertor-2.0rc4-win64_headless.msi,
1.在UniConverter安装路径下找到"dll"子目录(在我的例子中是
C:\Program Files\UniConvertor-2.0rc4\dlls
)。1.将此"dll"路径添加到系统路径。
1.关闭VSCode并重新打开该项目。
1.尝试再次运行服务器。请享用!
dbf7pr2w2#
WeasyPrint需要Pango、cairo和GDK-PixBuf库。它们是GTK+(以前称为GIMP工具包)的一部分,必须单独安装。
安装GTK+库后,请执行以下操作:
ldfqzlk83#
从Python 3.8开始,dll需要单独添加。添加了GTK+、MSYS2、Visual Studio C编译器和Uniconverter。但是,似乎什么都不起作用。最后,在放置调用add_dll_directory的脚本后,使其工作。
来源:PyCairo Windows Python 3.8导入问题
cgh8pdjw4#
在此查看解决方案:
https://www.programmersought.com/article/47674569357/
如果安装后未添加路径,则需要添加路径:
C:\程序文件\GTK3-运行时Win64\bin
我已经用这种方法解过很多次了。
uttx8gqw5#
如果您使用的是轻量级的LinuxDockerImage,它可能不包括上面提到的GTK,那么,您可以通过在Dockerfile中添加GTK来包括它
所有这些软件包都建议由weasyprint安装,GCC有GTK。
ia2d9nvy6#
好吧,我明白了。你可以有一个64位版本的python不工作。我发现工作,这可能会改变是安装64位版本的python从python的网站,而不是从微软商店!
1.删除任何版本的python你已经安装
1.下载https://www.python.org/ftp/python/3.8.10/python-3.8.10-amd64.exe
1.安装
1.下载并安装https://github.com/tschoonj/GTK-for-Windows-Runtime-Environment-Installer/releases
1.确切链接为https://github.com/tschoonj/GTK-for-Windows-Runtime-Environment-Installer/releases/download/2021-04-29/gtk3-runtime-3.24.29-2021-04-29-ts-win64.exe
1.请注意,链接来自https://doc.courtbouillon.org/weasyprint/stable/first_steps.html#windows
1.在您的环境路径中添加bin文件夹(抱歉,这是其他人的计算机,我使用Ubuntu)。
1.在weasyprint上运行第一步,你应该可以开始了!
mo49yndu7#
可能有点晚了,但我刚刚遇到了同样的问题:从这里开始:
https://weasyprint.readthedocs.io/en/stable/install.html#windows
。在这里您可以找到包含所需DLL的GTK包的链接。在我的例子中,我有一个64位Python,所以我使用:"
Download and run the latest gtk3-runtime-x.x.x-x-x-x-ts-win64.exe
"我没有更改安装目录
安装完成后,我将路径添加到变量路径中。
我重新启动终端,确保可以使用以下命令定位DLL:
WHERE libcairo-2.dll
。这将返回C:\Program Files\GTK3-Runtime Win64\bin\libcairo-2.dll
然后我运行
python -m weasyprint http://weasyprint.org weasyprint.pdf
,得到了一些警告,但它们只是警告:)cwxwcias8#
我也犯过同样的错误
我已经安装了gtk,如下所示gtk install in windows
什么都不管用
之后:
python-m pip安装pycairo
我帮我解决了这个问题
uemypmqf9#
试试这个:https://cairocffi.readthedocs.io/en/stable/overview.html#installing-cairo-on-windows
也许这会起作用:https://www.lfd.uci.edu/~gohlke/pythonlibs/#pycairo
最佳选择是安装Cairoffi槽管道