Windows失败打包简单Kivy应用程序

时间:2019-03-18 05:34:09

标签: python kivy pyinstaller

我无法为此应用程序编译Kivy软件包:

# test.py
import kivy
kivy.require('1.10.1')
from kivy.app import App
from kivy.uix.label import Label

class MyApp(App):

    def build(self):
        return Label(text='Hello world')

if __name__ == '__main__':
    MyApp().run()

已安装Python v3.7.1和Kivy v1.10.1。我按照Kivy用户指南安装了pip和wheel和Kivy的依赖项:

https://kivy.org/doc/stable/guide/packaging-windows.html

我将'test.py'放置在'c:\ compile-test-folder'中,并验证解释器使用以下命令运行它:

python test.py

在“ c:\ compile-test-folder”中,我制作了一个规格文件:

python -m PyInstaller-名称测试test.py

运行此命令会产生许多“ stderr”警告。也许这很常见……它还生成了“ build”和“ dist”文件夹以及“ test.spec”文件。

在按照用户指南进行更改后,规格文件显示如下:

# -*- mode: python -*-
from kivy.deps import sdl2, glew

block_cipher = None

a = Analysis(['test.py'],
             pathex=['c:\\compile-test-folder\\'],
             binaries=[],
             datas=[],
             hiddenimports=[],
             hookspath=[],
             runtime_hooks=[],
             excludes=[],
             win_no_prefer_redirects=False,
             win_private_assemblies=False,
             cipher=block_cipher,
             noarchive=False)
pyz = PYZ(a.pure, a.zipped_data,
             cipher=block_cipher)
exe = EXE(pyz,
          a.scripts,
          [],
          exclude_binaries=True,
          name='test',
          debug=False,
          bootloader_ignore_signals=False,
          strip=False,
          upx=True,
          console=True )
coll = COLLECT(exe, Tree('c:\\compile-test-folder\\'),
               a.binaries,
               a.zipfiles,
               a.datas,
               *[Tree(p) for p in (sdl2.dep_bins + glew.dep_bins)],
               strip=False,
               upx=True,
               name='test')

最后,我运行了以下内容,但是'dist'文件夹仍然为空。

python -m PyInstaller test.spec

其他人也有类似的问题,但是我没有看到适用的解决方案。也许有些事情我显然做错了,或者也许我应该检查一个常见的问题...

0 个答案:

没有答案