简体   繁体   中英

py2exe with wxpython and wxpython DLL load failed

I want to use py2exe to pack a python file.

from distutils.core import setup
from glob import glob
import scipy
import numpy
import py2exe
import matplotlib
import wx
import sys

setup(
        windows=["practice.py"],

      options={"py2exe":
               {"dll_excludes":["libiomp5md.dll",
                                "OLEAUT32.dll",
                                "USER32.dll",
                                "IMM32.dll",
                                "ole32.dll",
                                "MSVCP90.dll",
                                "SHELL32.dll",
                                "RPCRT4.dll",
                                "COMDLG32.dll",
                                "WSOCK32.dll",
                                "COMCTL32.dll",
                                "ADVAPI32.dll",
                                "WS2_32.dll",
                                "WINSPOOL.DRV",
                                "GDI32.dll",
                                "WINMM.dll",
                                "KERNEL32.dll",
                                "msvcm90.dll",
                                "msvcp90.dll",
                                "msvcr90.dll",
                                'libgdk-win32-2.0-0.dll',  
                                'libgobject-2.0-0.dll'],
               "includes" : [ "matplotlib.backends",
                              "matplotlib.backends.backend_qt4agg",
                              "pylab",
                              "numpy",
                              "wx",
                              "scipy",
                              "matplotlib.backends.backend_tkagg"],
                'excludes':['_gtkagg',
                            '_tkagg',
                            '_agg2',
                            '_cairo',
                            '_cocoaagg',
                            '_fltkagg',
                            '_gtk',
                            '_gtkcairo']                            

                }

            },
        data_files=matplotlib.get_py2exe_datafiles()
      )

However,when I open the .exe , it reported as following

Traceback (most recent call last):
  File "practice.py", line 1, in <module>
  File "matplotlib\__init__.pyc", line 180, in <module>
  File "matplotlib\cbook.pyc", line 33, in <module>
  File "numpy\__init__.pyc", line 168, in <module>
  File "numpy\add_newdocs.pyc", line 13, in <module>
  File "numpy\lib\__init__.pyc", line 18, in <module>
  File "numpy\lib\polynomial.pyc", line 19, in <module>
  File "numpy\linalg\__init__.pyc", line 50, in <module>
  File "numpy\linalg\linalg.pyc", line 29, in <module>
  File "numpy\linalg\lapack_lite.pyc", line 12, in <module>
  File "numpy\linalg\lapack_lite.pyc", line 10, in __load
ImportError: DLL load failed: can't find specific modulus.

64bit windows8 python2.7.9

I have searched in Stackoverflow and find some answers, however, it doesn't work.

Is your numpy installation ok?

"numpy\\linalg\\linalg.pyc", line 29 is trying to load

from numpy.linalg import lapack_lite, _umath_linalg

In my installation, I have lapack_lite.pyd and _umath_linalg.pyd there.

But it looks like your numpy is somehow expecting lapack_lite.pyc. I do not know why they are different but perhaps re-installing the numpy will help?

Numpy usually behaves very well with py2exe.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM