El uso de pyinstaller en parmap provoca un error de importación de tkinter matplotlib. ¿Por qué?

Actualizar

Si intento degradar de Pyinstaller 3.2 a 3.1, en su lugar obtengo el siguiente rastreo cuando intento ejecutar el ejecutable.

Traté de agregar--hidden-import=collect_submodules('pkg_resources._vendor') a pyinstaller como se señaló aquí, pero no tuvo ningún efecto. Mismo error. Esto parece deberse a un problema con las herramientas de configuración. Estoy usando 26.0.0. La reducción a 19.3 que muchas fuentes dicen que soluciona el problema realmente soluciona este problema, pero luego vuelvo al problema que tengo a continuación.

Tengo un proyecto python 2.7 pyqt4 que estoy tratando de convertir en un .exe usando pyinstaller. Yo suelo:

pyinstaller --additional-hooks-rir=. --clean --win-private-assemblies pipegui.py

pipegui.py se puede encontrar en githubaquí

Me sale un ejecutable que funciona y la aplicación parece funcional.aquí es lo que escupe el terminal mientras pyinstaller se congela. Sin embargo, la aplicación se bloquea cuando ejecuto partes particulares de mi programa. Se bloquea y el terminal entra en un bucle que genera continuamente el mismo rastreo a continuación con "Poolworker-X" en la parte superior que aumenta continuamente:

Como puede ver, tkinter está implicado, a pesar de que la palabra "tkinter" no aparece en ninguna parte de mi proyecto (usando pyqt4). Sin embargo, estoy usando matplotlib y de las respuestas discutidasaquí yaquí He agregado lo siguiente a la parte superior depipegui.py mi guión principal:

    from Tkinter import * 
    import Tkinter
    import FileDialog

Sin embargo, esto parece ser un paso en la dirección incorrecta porque después de congelarme con esto (y los mismos indicadores que antes) mi ejecutable ni siquiera se abrirá y en su lugar obtengo esto:

aquí es la salida prácticamente idéntica de pyinstaller mientras se congela. Recuerde que todo lo que hice fue agregar las 3 declaraciones de importación anteriores. Eso es.

También probé pyinstaller--additional-hooks=. --clean --win-private-assemblies --hidden-import=Tkinter pipegui.py Y no hizo ninguna diferencia. Estoy completamente perplejo de por qué intentar importar tkinter está haciendo esto. ¿Arreglar este rastreo me llevará más cerca de resolver el otro?

Después de probar todo esto, descubrí que las únicas partes de mi ejecutable que se están bloqueando son las partes que utilizanparmap multiprocesamiento Las clases que usan matplotlib pero no parmap están funcionando bien.

Entonces, tenga en cuenta que mi pregunta es cómo se puede solucionar el primer rastreo y también ¿por qué aparecen tanto matplotlib como tkinter en el rastreo a pesar de mi código donde ocurre el bloqueo haciendo uso de niether?

Notas adicionales

yo suelo--clean --win-private-assemblies arreglarerror code 14001 según poraquí

Respuestas a la pregunta(1)

Su respuesta a la pregunta