2015-06-10 8 views
5

Ich habe dies lief in mein Skript beim Export (die numpy und scipy Bibliotheken verwendet) über py2exe:Script mit scipy mit py2exe

Traceback (most recent call last): 
File "imPok.py", line 3, in <module> 
File "scipy\misc\__init__.pyc", line 49, in <module> 
File "scipy\special\__init__.pyc", line 603, in <module> 
File "scipy\special\basic.pyc", line 18, in <module> 
File "scipy\special\orthogonal.pyc", line 101, in <module> 
File "scipy\linalg\__init__.pyc", line 188, in <module> 
File "scipy\linalg\_decomp_update.pyc", line 12, in <module> 
File "scipy\linalg\_decomp_update.pyc", line 10, in __load 
File "scipy/linalg/_decomp_update.pyx", line 1, in init scipy.linalg._decomp_update (scipy\linalg\_decomp_update.c:35768) 
ImportError: No module named cython_blas 

Versuchte:

  • Installation cython - ohne Einsatz
  • Entfernen scipy Abhängigkeiten - das hat funktioniert, dh das Problem ist in Zusammenarbeit zwischen scipy und py2exe.
  • Aufbringen der Lösung von this question - keine Verwendung

Fragen:

  • wie kann ich diese Arbeit machen?
  • was sollte/sollte ich generell nicht machen, um diese Probleme zu vermeiden?

Anhang:

Dies sind die problematischen Zeilen:

from scipy.misc import imread 
import numpy as np 

Ich habe fragen eigentlich nicht für scipy.linalg und scipy.special und doch ist die py2exe sie will.

Antwort

3

Ich lief in dieses Problem heute und fand eine gründlichere Lösung von here.

opts = {"py2exe": { 
    "includes": ['scipy', 'scipy.integrate', 'scipy.special.*','scipy.linalg.*']}} 

Dann in Ihrem setup.py-Skript verwenden:

setup(options=opts,windows=['script.py']) 
3

scipy.misc muss scipy.linalg.cython_blas als Abhängigkeit haben. Um dies zu lösen das folgende Paket in Ihrem py2exe Setup-Skript an den include „Optionen> umfassen“ -Niveau:

scipy.linalg.cython_blas