Pyinstaller和Kivy不会安装

时间:2015-10-05 00:53:24

标签: python kivy pyinstaller

使用Pyinstaller将我的Kivy应用程序设为exe时出错。我一直在关注如何做的this教程,但是当我构建spec文件时出现了这个错误:

C:\Users\paolo\Downloads\Kivy-1.9.0-py3.4-win32-x64\Encryption>pyinstaller Encryption.spec
164 INFO: PyInstaller: 3.0
165 INFO: Python: 3.4.3
166 INFO: Platform: Windows-8-6.2.9200
186 INFO: UPX is not available.
Traceback (most recent call last):
  File "C:\Users\paolo\Downloads\Kivy-1.9.0-py3.4-win32-x64\Python34\Scripts\pyinstaller-script.py", line 9, in <module>
    load_entry_point('PyInstaller==3.0', 'console_scripts', 'pyinstaller')()
  File "C:\Users\paolo\Downloads\Kivy-1.9.0-py3.4-win32-x64\Python34\lib\site-packages\PyInstaller\__main__.py", line 99, in run
    run_build(opts, spec_file, pyi_config)
  File "C:\Users\paolo\Downloads\Kivy-1.9.0-py3.4-win32-x64\Python34\lib\site-packages\PyInstaller\__main__.py", line 47, in run_build
    PyInstaller.building.build_main.main(pyi_config, spec_file, **opts.__dict__)
  File "C:\Users\paolo\Downloads\Kivy-1.9.0-py3.4-win32-x64\Python34\lib\site-packages\PyInstaller\building\build_main.py", line 737, in main
    build(specfile, kw.get('distpath'), kw.get('workpath'), kw.get('clean_build'))
  File "C:\Users\paolo\Downloads\Kivy-1.9.0-py3.4-win32-x64\Python34\lib\site-packages\PyInstaller\building\build_main.py", line 680, in build
    exec(text, spec_namespace)
  File "<string>", line 33
SyntaxError: non-keyword arg after keyword arg

老实说,我不知道这是什么意思,因为它实际上都没有包含spec文件本身。我将我的spec文件编辑为Kivy指南所说的内容,看起来像是

# -*- mode: python -*-
from kivy.tools.packaging.pyinstaller_hooks import get_hooks
import os
block_cipher = None


a = Analysis(['C:\\Users\\paolo\\Documents\\PythonProjects\\KivyEncryption\\KivyMain.py'],
             pathex=['C:\\Users\\paolo\\Downloads\\Kivy-1.9.0-py3.4-win32-x64\\Encryption'],
             binaries=None,
             datas=None,
             hiddenimports=[],
             excludes=None,
             win_no_prefer_redirects=None,
             win_private_assemblies=None,
             cipher=block_cipher, **get_hooks())
pyz = PYZ(a.pure, a.zipped_data,
             cipher=block_cipher)
exe = EXE(pyz,
          a.scripts,
          exclude_binaries=True,
          name='Encryption',
          debug=False,
          strip=None,
          upx=True,
          console=True )
coll = COLLECT(exe,
               a.binaries,
               a.zipfiles,
               a.datas,
               strip=None,
               upx=True,
               name='Encryption',
               Tree('C:\Users\paolo\Documents\PythonProjects\KivyEncryption\\'),
               Tree([f for f in os.environ.get('KIVY_SDL2_PATH', '').split(';') if 'bin' in f][0]))

我在做这个之前测试了我的Kivy应用程序,它可以正常工作;所以我想问题是我做错了什么?我在网上搜索了这个错误,但我发现与Kivy没什么关系。我在他们的网站(1.9.0)上使用最新版本的Kivy portable并使用Windows 10。

非常感谢任何帮助。

0 个答案:

没有答案