Я пытаюсь создать автономный дистрибутив WeasyPrint для Windows. Я скачал и распаковал встраиваемый ZIP-файл Python 3.8 в каталог dist
. Затем в MSYS2 я использовал полный интерпретатор Python 3.8 с Pip для установки WeasyPrint в каталог dist
(учитывая ошибку в Pillow при установке на MSYS2):
pip install --target dist --global-option=build_ext --global-option="-ldl" pillow
pip install --target dist weasyprint
Теперь, когда Я запускаю WeasyPrint:
./dist/python.exe -m weasyprint http://weasyprint.org test.pdf
Я получаю:
Traceback (most recent call last):
File "runpy.py", line 184, in _run_module_as_main
File "runpy.py", line 143, in _get_module_details
File "runpy.py", line 110, in _get_module_details
File "C:\msys64\home\David\dist\weasyprint\__init__.py", line 440, in <module>
from .css import preprocess_stylesheet # noqa isort:skip
File "C:\msys64\home\David\dist\weasyprint\css\__init__.py", line 30, in <module>
from . import computed_values, media_queries
File "C:\msys64\home\David\dist\weasyprint\css\computed_values.py", line 18, in <module>
from .. import text
File "C:\msys64\home\David\dist\weasyprint\text.py", line 14, in <module>
import cairocffi as cairo
File "C:\msys64\home\David\dist\cairocffi\__init__.py", line 17, in <module>
from ._generated.ffi import ffi
File "C:\msys64\home\David\dist\cairocffi\_generated\ffi.py", line 2, in <module>
import _cffi_backend
ModuleNotFoundError: No module named '_cffi_backend'
Как Python может найти другие модули, но не собственный? В каталоге dist
есть файл с именем _cffi_backend-cpython-38.dll
. Это все еще не работает, если я переименую файл в _cffi_backend.dll
.