Problemet är att pyinstaller inte ser importer på andra nivån . Så om du importerar modul A , pyinstaller ser detta. Men vilken ytterligare modul som helst som importeras i A kommer inte att synas.
Det finns inget behov av att ändra något i dina python-skript. Du kan lägga till de saknade importerna direkt i specifikationen . Lägg bara till följande i a = Analysis(...)
:
hiddenimports=["mysql"],
Detta bör bli 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 sedan pyinstaller med spec-filen som argument.