将kivy应用程序打包到一个单独的exe中

时间:2017-01-03 10:15:52

标签: python package kivy executable pyinstaller

我用kivy(使用.kv)创建了一个应用程序,我想将其打包成一个.exe文件。

使用PyInstaller可以添加选项--onefile,但是当使用spec文件打包时这不起作用。

这是我的spec文件:

# -*- mode: python -*-

from kivy.deps import sdl2, glew

block_cipher = None


a = Analysis(['main.py'],
             pathex=['path\\myapp'],
             binaries=None,
             datas=None,
             hiddenimports=[],
             hookspath=[],
             runtime_hooks=[],
             excludes=[],
             win_no_prefer_redirects=False,
             win_private_assemblies=False,
             cipher=block_cipher)
pyz = PYZ(a.pure, a.zipped_data,
             cipher=block_cipher)
exe = EXE(pyz,
          a.scripts,
          a.binaries,
          a.zipfiles,
          a.datas,
          name='myapp',
          debug=False,
          strip=False,
          upx=True,
          console=False )

coll = COLLECT(exe, Tree('path\\myapp\\'),
               a.binaries,
               a.zipfiles,
               a.datas,
               *[Tree(p) for p in (sdl2.dep_bins + glew.dep_bins)],
               strip=False,
               upx=True,
               name='myapp')

我只想拥有一个可以轻松共享的可执行输出。

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

找到并工作!! 对于任何试图达到同样目的的人,请参阅RAJ的帖子:

Kivy: compiling to a single executable