ImportError: impossible d'importer nom MAXREPEAT avec cx_Freeze

Je suis en cours d'exécution dans un problème avec cx_Freeze lors de l'exécution d'une application figée (fonctionne très bien dégelé).

Lors de l'exécution du programme, les résultats dans la suite de l'exī:

Traceback (most recent call last):
  File "/usr/local/lib/python2.7/site-packages/cx_Freeze/initscripts/Console.py", line 27, in <module>
    exec code in m.__dict__
  File "PythonApp/mainframe.py", line 3, in <module>
  File "/usr/local/lib/python2.7/site-packages/dbus/__init__.py", line 103, in <module>
    from dbus._dbus import Bus, SystemBus, SessionBus, StarterBus
  File "/usr/local/lib/python2.7/site-packages/dbus/_dbus.py", line 39, in <module>
    from dbus.bus import BusConnection
  File "/usr/local/lib/python2.7/site-packages/dbus/bus.py", line 39, in <module>
    from dbus.connection import Connection
  File "/usr/local/lib/python2.7/site-packages/dbus/connection.py", line 27, in <module>
    import threading
  File "/usr/local/lib/python2.7/threading.py", line 44, in <module>
    module='threading', message='sys.exc_clear')
  File "/usr/local/lib/python2.7/warnings.py", line 57, in filterwarnings
    import re
  File "/usr/local/lib/python2.7/re.py", line 105, in <module>
    import sre_compile
  File "/usr/local/lib/python2.7/sre_compile.py", line 14, in <module>
    import sre_parse
  File "/usr/local/lib/python2.7/sre_parse.py", line 17, in <module>
    from sre_constants import *
  File "/usr/local/lib/python2.7/sre_constants.py", line 18, in <module>
    from _sre import MAXREPEAT
ImportError: cannot import name MAXREPEAT

Je suis sur linux à l'aide d'une version de python 2.7.4 que j'ai construit à partir de la source, et l'importation de _sre à partir d'une invite fonctionne et je peux accéder à la MAXREPEAT constante.

C'est généralement cx_Freeze pas en tirant à tout en library.zip et peut être fixé par le nommer explicitement le module dans cx_Freezes de configuration contient la liste et la la solution à cette question similaire, mais qui n'a pas aidé ici.

Ce _sre module semble bizarre.. il n'y a pas _sre fichier dans le library.zip généré mais à partir de cette erreur, il me semble qu'il peut trouver, cependant il ne peut pas importer ce symbole? Sûrement, si le module n'était pas là, il serait un "No module named _sre d'erreur". Ou peut-être une importation circulaire mais _sre talon n'a pas tout les importations.

Ce qui est bizarre c'est que je n'arrive pas à trouver le fichier soit - est-ce module créé dynamiquement lors de l'importation d'une certaine manière?

find /usr/local/lib/python2.7 -name "_sre*"

ne retourne rien, et de l'importation _sre module ne dispose pas d'un __file__ attribut non plus, donc je n'ai aucune idée de comment assurez-vous qu'il est inclus comme il se présente comme un construit-dans.

>>> import _sre
>>> _sre.__file__
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'module' object has no attribute '__file__'
>>> repr(_sre)
"<module '_sre' (built-in)>"

C'est semblable à cette question aussi qui a demandé récemment, mais dans ce cas, il a été l'obtention de l'erreur dans l'ordinaire de l'interprète, mais pour moi c'est juste dans la cx_Freeze.

modifier

De course python -v semble comme il est intégré, donc je ne sais pas pourquoi cx_Freeze peut manquer, ou comment je voudrais le réparer.

...
# /usr/local/lib/python2.7/re.pyc matches /usr/local/lib/python2.7/re.py
import re # precompiled from /usr/local/lib/python2.7/re.pyc
# /usr/local/lib/python2.7/sre_compile.pyc matches /usr/local/lib/python2.7/sre_compile.py
import sre_compile # precompiled from /usr/local/lib/python2.7/sre_compile.pyc
import _sre # builtin
# /usr/local/lib/python2.7/sre_parse.pyc matches /usr/local/lib/python2.7/sre_parse.py
import sre_parse # precompiled from /usr/local/lib/python2.7/sre_parse.pyc
...

OriginalL'auteur GP89 | 2013-04-30