Cmag Cmag - 5 days ago 4
Python Question

Pyinstaller, NameError: global name 'quit' is not defined

I have a python script which runs just fine, but after running pyinstaller, I get the following on any quit() or exit() commands:

Makespec file:

# -*- mode: python -*-
a = Analysis([os.path.join(HOMEPATH,'support/_mountzlib.py'), os.path.join(HOMEPATH,'support/useUnicode.py'), 'icinga.py'],
pathex=['/home/user/projects/icinga_python/releases/onefile_v1.0'])
pyz = PYZ(a.pure)
exe = EXE( pyz,
a.scripts,
a.binaries,
a.zipfiles,
a.datas,
name=os.path.join('dist', 'icinga'),
debug=False,
strip=False,
upx=True,
console=1 )


Here is what I see after I run the app:

Traceback (most recent call last):
File "<string>", line 222, in <module>
File "<string>", line 207, in main
File "<string>", line 66, in icinga_mysql
File "<string>", line 45, in checksanity
NameError: global name 'quit' is not defined

Answer

That is because there is no quit command. You are looking for sys.exit.