Windows環境でpythonの機械学習ライブラリscipyのインストールでハマった時の対処
Windows環境でpythonの機械学習ライブラリscipyをインストールしようとしてハマったのでメモ。
環境
Windows10 64bit Python for Window 3.5.1
事象
事前にnumpyはインストール済みの状態で、pipでscipyをインストールしようとすると以下のエラー
$ pip install scipy
Running from scipy source directory. Traceback (most recent call last): File "<string>", line 1, in <module> File "C:\cygwin\tmp\pip-build-jdbdpxyp\scipy\setup.py", line 415, in <module> setup_package() File "C:\cygwin\tmp\pip-build-jdbdpxyp\scipy\setup.py", line 411, in setup_package setup(**metadata) File "c:\python3.5\lib\site-packages\numpy\distutils\core.py", line 135, in setup config = configuration() File "C:\cygwin\tmp\pip-build-jdbdpxyp\scipy\setup.py", line 335, in configuration config.add_subpackage('scipy') File "c:\python3.5\lib\site-packages\numpy\distutils\misc_util.py", line 1003, in add_subpackage caller_level = 2) File "c:\python3.5\lib\site-packages\numpy\distutils\misc_util.py", line 972, in get_subpackage caller_level = caller_level + 1) File "c:\python3.5\lib\site-packages\numpy\distutils\misc_util.py", line 909, in _get_configuration_from_setup_py config = setup_module.configuration(*args) File "scipy\setup.py", line 15, in configuration config.add_subpackage('linalg') File "c:\python3.5\lib\site-packages\numpy\distutils\misc_util.py", line 1003, in add_subpackage caller_level = 2) File "c:\python3.5\lib\site-packages\numpy\distutils\misc_util.py", line 972, in get_subpackage caller_level = caller_level + 1) File "c:\python3.5\lib\site-packages\numpy\distutils\misc_util.py", line 909, in _get_configuration_from_setup_py config = setup_module.configuration(*args) File "scipy\linalg\setup.py", line 20, in configuration raise NotFoundError('no lapack/blas resources found') numpy.distutils.system_info.NotFoundError: no lapack/blas resources found ---------------------------------------- Command "c:\python3.5\python.exe -u -c "import setuptools, tokenize;__file__='C:\\cygwin\\tmp\\pip-build-jdbdpxyp\\scipy\\setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record C:\cygwin\tmp\pip-2epuj3ap-record\install-record.txt --single-version-externally-managed --compile" failed with error code 1 in C:\cygwin\tmp\pip-build-jdbdpxyp\scipy\
対処
インストール済みのnumpyをアンインストール
pip uninstall numpy
http://www.lfd.uci.edu/~gohlke/pythonlibs/#scipy
にアクセスし
numpy-1.11.2+mkl-cp35-cp35m-win_amd64.whl
scipy-0.18.1-cp35-cp35m-win_amd64.whl
をダウンロードする
※numpyはmkl(Intel Math Kernel Library)が付属した.whlファイルを選択する必要有り
ダウンロード後インストール
$ pip install numpy-1.11.2+mkl-cp35-cp35m-win_amd64.whl $ pip install scipy-0.18.1-cp35-cp35m-win_amd64.whl
エラー出ずにインストールできた!
Processing c:\users\shinzato\desktop\scipy-0.18.1-cp35-cp35m-win_amd64.whl Installing collected packages: scipy Successfully installed scipy-0.18.1