我用python 3编写了一个gui应用程序,使用kivy,它需要分发给需要可执行文件的非技术人员。
第一次尝试构建一个.exe时,我得到了一个800MB的dist文件夹,因为numpy是mkl版本,而不是openblas版本。我为我的应用程序使用了一个专用的环境(
from this question
),现在我已经降到了170 MB,即使是压缩后,它仍然很大。我希望我可以达到50MB甚至更低,但我不明白文件建议做什么…我确信有很多kivy依赖项被插入到.exe dist中,但没有被使用。
现在我正在使用文档中建议的标准.spec文件:
from kivy.deps import sdl2, glew
block_cipher = None
a = Analysis(['UploadTimeProgramGUI.py'],
pathex=['C:\\Users\\M\\Desktop\\kivyapp\\test'],
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,