Problemet er, at pyinstaller ikke vil se importer på andet niveau . Så hvis du importerer modul A , pyinstaller ser dette. Men ethvert ekstra modul, der er importeret i A vil ikke blive set.
Der er ingen grund til at ændre noget i dine python-scripts. Du kan tilføje de manglende importer direkte til specifikationsfilen .Bare tilføje følgende i a = Analysis(...)
:
hiddenimports=["mysql"],
Dette skulle være resultatet:
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/v2.1'], hiddenimports=["mysql"],)
Kør derefter pyinstaller med spec-filen som argument.