2016-10-11 2 views
0

Nicht sicher, was passiert und warum py2exe das Modul nicht finden kann. Meine setup.py Datei ist wie folgt:`ImportError: Kein Modul namens pyautocad` immer wenn ich versuche, eine exe mit py2exe zu erstellen

from distutils.core import setup 
import py2exe 
import shutil 

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

Ich bin nicht sicher, wo ich anfangen soll oder wie man Grund, warum py2exe nicht in der Lage ist pyautocad zu importieren. Wenn ich IDLE oder nur die Python-Shell öffne und import pyautocad eintippe, importiert es feine.

Antwort

0

Sie müssen Ihre pyautocad.pyd einschließen. Py2exe ist so strukturiert, anders als Python-Interpreter, der für die Module in Website-Paket sieht ...

Sie es mit wie tun könnten (keinen genauen Code, nur Strukturvorschlag ..!):

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