2016-10-11 1 views
0

Je ne suis pas sûr de ce qui se passe et pourquoi py2exe est incapable de trouver le module. Mon fichier setup.py est la suivante:`ImportError: aucun module nommé pyautocad` à chaque fois que j'essaie de créer un exe avec py2exe

from distutils.core import setup 
import py2exe 
import shutil 

setup(windows=["RotoWorks.py"], options={'py2exe': {'includes': ['pyautocad']}}) 

Je ne sais pas où commencer ou comment la raison pour laquelle py2exe ne peut pas importer pyautocad. Si j'ouvre IDLE ou seulement le shell python et que je tape import pyautocad, cela importe bien.

Répondre

0

Vous devez inclure votre pyautocad.pyd. py2exe est structuré autrement que l'interpréteur python, qui se penche sur site-packages pour les modules ...

vous pourriez le faire avec comme (pas de code exact, juste proposition structurelle ..!):

import glob, shutil, py2exe 

correct_Pyd_file = 'none' 
for file in glob.glob('*.pyd'): 
    if file.startswith("pyautocad"): 
     correct_Pyd_file = file 

correct_Pyd_file.strip('.pyd') #strip ending for py2exe 


opts = {'py2exe': {'compressed': True, "dll_excludes": ["MSVCP90.dll"], "includes" : ["sip"]}} 

setup(console=[{"script" : "main.py"}], options=opts, data_files=correct_Pyd_file) 
shutil.rmtree('build', ignore_errors=True)  #Remove the build folder