python - pyinstaller kivy错误无法获取任何图像提供程序,中止

标签 python python-3.x kivy virtualenv pyinstaller

嗨,我在virtualenv中使用pyinstaller创建了一个kivy python

我的程序在控制台中使用命令python cipol.py运行成功运行,没有错误 但是当使用 pyinstaller 使用命令 pyinstaller cipol.spec

创建 exe 时

它会返回

[信息] [工厂] 已加载 186 个符号

[信息] [图片] 提供程序:(img_tex、img_dds、img_ffpyplayer、img_pil、img_sdl2 已忽略)

[严重] [应用程序] 无法获取任何图像提供程序,中止。

这是我的规范文件:

# -*- mode: python ; coding: utf-8 -*-
from kivy_deps import sdl2, glew
import os
os.environ['KIVY_IMAGE'] = 'pil,sdl2'
from importlib import __import__

block_cipher = None


a = Analysis(['C:\\Users\\user\\Desktop\\cipol-kivy\\exe\\venv\\Lib\\sync\\cipol.py'],
         pathex=['C:\\Users\\user\\Desktop\\cipol-kivy\\exe\\venv\\Lib\\sync'],
         binaries=[],
         datas=[],
         hiddenimports=['win32file','win32timezone'],
         hookspath=[],
         runtime_hooks=[],
         excludes=[],
         win_no_prefer_redirects=False,
         win_private_assemblies=False,
         cipher=block_cipher,
         noarchive=False)
a.datas += [('logo.png','C:\\Users\\user\\Desktop\\cipol-kivy\\exe\\venv\\Lib\\sync\\logo.png','DATA'), ('style.kv', 'C:\\Users\\user\\Desktop\\cipol-kivy\\exe\\venv\\Lib\\sync\\style.kv', 'DATA')]

pyz = PYZ(a.pure, a.zipped_data,
         cipher=block_cipher)
exe = EXE(pyz,
      a.scripts,
      [],
      exclude_binaries=True,
      name='cipolsync',
      debug=True,
      bootloader_ignore_signals=False,
      strip=False,
      upx=True,
      console=True,
      icon='C:\\Users\\user\\Desktop\\cipol-kivy\\exe\\venv\\Lib\\sync\\cipol.ico')
coll = COLLECT(exe,
            Tree('C:\\Users\\user\\Desktop\\cipol-kivy\\exe\\venv\\Lib\\sync\\'),
           a.binaries,
           a.zipfiles,
           a.datas,
           *[Tree(p) for p in (sdl2.dep_bins + glew.dep_bins)],
           strip=False,
           upx=True,
           upx_exclude=[],
           name='cipolsync')

最佳答案

尝试使用此命令:pyinsaller --onefile cipol.py。然后删除所有文件夹和spec文件,但不要删除dist文件夹。 exe 文件将位于该 dist 文件夹内。

关于python - pyinstaller kivy错误无法获取任何图像提供程序,中止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69737311/

相关文章:

python kivy 在矩形内添加文本

python - 使用 python 根据不同文件中的键列进行映射

python - 在函数中使用 urllib2

python - 如何禁用 django 管理分页?

android - 如何将kivy和python文件编译为apk

android - Buildozer Android Kivy 导入要求失败

python - 无法从 Python 正确解码 JSON URL

python - 基准测试 python(命令行)

javascript - 使用js2py调用或获取python上下文怎么样

Python3 帮助确定动态创建列表的大多数 pythonic 方法