Het probleem is dat pyinstaller tweede niveau imports niet zal zien . Dus als u module A . importeert , ziet pyinstaller dit. Maar elke extra module die wordt geïmporteerd in A zal niet worden gezien.
Het is niet nodig om iets in uw python-scripts te veranderen. U kunt de ontbrekende importen direct toevoegen aan het spec-bestand .Voeg gewoon het volgende toe in a = Analysis(...)
:
hiddenimports=["mysql"],
Dit zou het resultaat moeten zijn:
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"],)
Voer daarna pyinstaller uit met het spec-bestand als argument.