import sys ... ... def closeApplication(): s = input('\nPress <Enter> for close Application') sys.exit(0) ... ...
полный текст скрипта можно посмотреть на github
Скрипт под Windows и Linux из под интерпретатора 3.4 и 3.5 выполняется без ошибок.
Откомпилированные в исполняемый модуль под Linux выполняется то же без ошибок.
Откомпилировал под Windows:
pyinstaller.exe --onefile KoboShelf.py
C:\Stuff>type KoboShelf.spec
# -*- mode: python -*-
block_cipher = None
a = Analysis(['KoboShelf.py'],
pathex=['C:\\Stuff'],
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='KoboShelf',
debug=False,
strip=False,
upx=True,
console=True )
C:\Stuff>
При компиляции выдало кучу предупреждений.
Завершается ошибкой:
C:\Stuff\dist>KoboShelf.exe
Can't find Kobo eReader.
Check mount Reader or use command line switches
Press <Enter> for close Application
Traceback (most recent call last):
File "KoboShelf.py", line 198, in <module>
File "KoboShelf.py", line 157, in main
File "KoboShelf.py", line 91, in detectUSBDrive
File "KoboShelf.py", line 34, in closeApplication
NameError: name 'exit' is not defined
Failed to execute script KoboShelf
Подскажите пожалуйста, что не так?
pyqt отлично ставится на винду и без таких жертв.