Programing/Python programming

python scipy - ImportError: DLL load failed

sosal 2017. 10. 10. 15:29
반응형

진짜 scipy 안에 있는 모듈을 import 할 때, DLL이 없다고 에러가 난다.


구글링 해서 Stack-overflow 같은 곳에서는 NumPy+MKL 를 설치하라고 난리다.

해당 파일은 http://www.lfd.uci.edu/~gohlke/pythonlibs/ 에서 다운받아서 설치할 수 있지만,

본인은 아무리 Numpy, scipy를 지우고 NumPy+MKL을 따로 받아 설치하고 해도

scipy는 import 되는데, 안에있는 sub-module에 대해서는 DLL error가 발생했다.





>>> import scipy

# scipy는 잘 import 됨.



>>> import scipy.misc

Traceback (most recent call last):

  File "<stdin>", line 1, in <module>

  File "C:\Users\sosal\AppData\Local\Programs\Python\Python36\lib\site-packages\scipy\misc\__init__.py", line 53, in <module>

    from scipy.interpolate._pade import pade

  File "C:\Users\sosal\AppData\Local\Programs\Python\Python36\lib\site-packages\scipy\interpolate\__init__.py", line 176, in <module>

    from .interpolate import *

  File "C:\Users\sosal\AppData\Local\Programs\Python\Python36\lib\site-packages\scipy\interpolate\interpolate.py", line 20, in <module>

    import scipy.linalg

  File "C:\Users\sosal\AppData\Local\Programs\Python\Python36\lib\site-packages\scipy\linalg\__init__.py", line 175, in <module>

    from .misc import *

  File "C:\Users\sosal\AppData\Local\Programs\Python\Python36\lib\site-packages\scipy\linalg\misc.py", line 5, in <module>

    from .blas import get_blas_funcs

  File "C:\Users\sosal\AppData\Local\Programs\Python\Python36\lib\site-packages\scipy\linalg\blas.py", line 155, in <module>

    from scipy.linalg import _fblas

ImportError: DLL load failed: 지정된 모듈을 찾을 수 없습니다.


>>> import scipy.linalg

Traceback (most recent call last):

  File "<stdin>", line 1, in <module>

  File "C:\Users\sosal\AppData\Local\Programs\Python\Python36\lib\site-packages\scipy\linalg\__init__.py", line 175, in <module>

    from .misc import *

  File "C:\Users\sosal\AppData\Local\Programs\Python\Python36\lib\site-packages\scipy\linalg\misc.py", line 5, in <module>

    from .blas import get_blas_funcs

  File "C:\Users\sosal\AppData\Local\Programs\Python\Python36\lib\site-packages\scipy\linalg\blas.py", line 155, in <module>

    from scipy.linalg import _fblas

ImportError: DLL load failed: 지정된 모듈을 찾을 수 없습니다.


>>> from scipy import signal

Traceback (most recent call last):

  File "<stdin>", line 1, in <module>

  File "C:\Users\sosal\AppData\Local\Programs\Python\Python36\lib\site-packages\scipy\signal\__init__.py", line 304, in <module>

    from .bsplines import *

  File "C:\Users\sosal\AppData\Local\Programs\Python\Python36\lib\site-packages\scipy\signal\bsplines.py", line 12, in <module>

    from scipy.special import comb, gamma

  File "C:\Users\sosal\AppData\Local\Programs\Python\Python36\lib\site-packages\scipy\special\__init__.py", line 640, in <module>

    from ._ufuncs import *

ImportError: DLL load failed: 지정된 모듈을 찾을 수 없습니다.






해결책은 정말 간단했다.


pip3 install scipy-stack


scipy-stack 이라는 패키지를 pip3로 받으니 해결..



C:\Users\sosal\Downloads>python

Python 3.6.3rc1 (v3.6.3rc1:d8c174a, Sep 19 2017, 16:39:51) [MSC v.1900 64 bit (AMD64)] on win32

Type "help", "copyright", "credits" or "license" for more information.

>>> import scipy

>>> from scipy import misc

>>> exit()