2012-09-27 13 views
7

Usando cx_freeze bajo ubuntu 12.04. La generación del paquete es hecho sin ningún error, pero cuando trato de ejecutar el paquete como un independiente , me sale el siguiente error:ejecutando el paquete throw ImportError: Ningún módulo llamado imagen

Traceback (most recent call last): 
    File "/usr/local/lib/python2.7/dist-packages/cx_Freeze/initscripts /Console.py", 
    line 27, in <module> 
    exec code in m.__dict__ 
    m m File "Setup_cx_freeze.py", line 3, in <module> 
    File "/usr/local/lib/python2.7/dist-packages/cx_Freeze/__init__.py", 
    line 4, in <module> 
    from cx_Freeze.dist import * 
    File "/usr/local/lib/python2.7/dist-packages/cx_Freeze/dist.py", 
    line 3, in <module> 
    import distutils.command.install 
     File "/usr/lib/python2.7/distutils/command/install.py", line 21, in   <module> 
     from site import USER_BASE 
     File "/usr/lib/python2.7/site.py", line 562, in <module> 
     main() 
     File "/usr/lib/python2.7/site.py", line 540, in main 
     abs__file__() 
     File "/usr/lib/python2.7/site.py", line 100, in abs__file__ 
    m.__file__ = os.path.abspath(m.__file__) 
    File "/usr/lib/python2.7/email/__init__.py", line 79, in __getattr__ 
     __import__(self.__name__) 
     ImportError: No module named image 

Creo que lo que hay que centrarse es la última frase. "ImportError: No module named image."

La aplicación se ejecuta sin ningún problema en el entorno python puro Entonces, ¿por qué aparece el error al ejecutarlo como un paquete "congelar"? El error se presenta de alguna manera al generar el paquete de congelación.

+1

Acabo de recibir este error. ¿Alguna vez lo resolviste? – dwxw

+0

¿alguna vez arregló este? – kellpossible

Respuesta

-1

resolvieron mediante la instalación de Python Imaging Library: http://www.pythonware.com/products/pil/

1) python setup.py build

2) sudo python setup.py install

+0

¿Estás seguro de que no estás hablando del módulo "Imagen", no "imagen"? – kellpossible

+0

No, no estoy seguro. Esto fue hace más de un año y no he tocado Python desde entonces. – imjared

2

Terminé la fijación del mismo al incluir explícitamente el paquete "email.mime" en la configuración. py script build exe opciones.

+0

Poner 'email' en la lista' packages' también debería funcionar. Dado que usa importaciones dinámicas, cx_Freeze no detecta automáticamente qué módulos están en uso, por lo que debe indicarse explícitamente que los copie. –

+0

@ThomasK Lo gracioso, estoy teniendo los mismos problemas y no hay nada en mi software que use el correo electrónico lib. Agregué el email.mime a mis paquetes y nada podría hacerlo funcionar. –

1

Falta 'imagen' es solo la primera parte del problema. Intente agregar esto a su código:

from email.mime.image import MIMEImage 
from email.mime.audio import MIMEAudio 
from email.mime.message import MIMEMessage 

Esto resolvió los problemas con 'imagen', 'audio' y 'mensaje'.

+0

Esto no funcionó para mí, ¿alguna otra alternativa? –

Cuestiones relacionadas