11

pip install scipy を使用して scipy をインストールしようとすると、次のトレースバックで失敗します

Downloading/unpacking scipy
  Downloading scipy-0.10.1.tar.gz (6.2MB): 6.2MB downloaded
  Running setup.py egg_info for package scipy
    Running from scipy source directory.
    blas_opt_info:
      FOUND:
        extra_link_args = ['-Wl,-framework', '-Wl,Accelerate']
        define_macros = [('NO_ATLAS_INFO', 3)]
        extra_compile_args = ['-msse3', '-I/System/Library/Frameworks/vecLib.framework/Headers']

    non-existing path in '/private/var/folders/rd/fplkflh93ls54kbl5ylphl4h0000gn/T/pip-build/scipy/scipy/io': 'docs'
    lapack_opt_info:
      FOUND:
        extra_link_args = ['-Wl,-framework', '-Wl,Accelerate']
        define_macros = [('NO_ATLAS_INFO', 3)]
        extra_compile_args = ['-msse3']

    umfpack_info:
      libraries umfpack not found in /usr/local/Cellar/python/2.7.3/Frameworks/Python.framework/Versions/2.7/lib
      libraries umfpack not found in /usr/local/lib
      libraries umfpack not found in /usr/lib
    /usr/local/lib/python2.7/site-packages/numpy/distutils/system_info.py:470: UserWarning:
        UMFPACK sparse solver (http://www.cise.ufl.edu/research/sparse/umfpack/)
        not found. Directories to search for the libraries can be specified in the
        numpy/distutils/site.cfg file (section [umfpack]) or by setting
        the UMFPACK environment variable.
      warnings.warn(self.notfounderror.__doc__)
      NOT AVAILABLE

    Traceback (most recent call last):
      File "<string>", line 16, in <module>
      File "/var/folders/rd/fplkflh93ls54kbl5ylphl4h0000gn/T/pip-build/scipy/setup.py", line 196, in <module>
        setup_package()
      File "/var/folders/rd/fplkflh93ls54kbl5ylphl4h0000gn/T/pip-build/scipy/setup.py", line 187, in setup_package
        configuration=configuration )
      File "/usr/local/lib/python2.7/site-packages/numpy/distutils/core.py", line 152, in setup
        config = configuration()
      File "/var/folders/rd/fplkflh93ls54kbl5ylphl4h0000gn/T/pip-build/scipy/setup.py", line 138, in configuration
        config.add_subpackage('scipy')
      File "/usr/local/lib/python2.7/site-packages/numpy/distutils/misc_util.py", line 1002, in add_subpackage
        caller_level = 2)
      File "/usr/local/lib/python2.7/site-packages/numpy/distutils/misc_util.py", line 971, in get_subpackage
        caller_level = caller_level + 1)
      File "/usr/local/lib/python2.7/site-packages/numpy/distutils/misc_util.py", line 908, in _get_configuration_from_setup_py
        config = setup_module.configuration(*args)
      File "scipy/setup.py", line 20, in configuration
        config.add_subpackage('special')
      File "/usr/local/lib/python2.7/site-packages/numpy/distutils/misc_util.py", line 1002, in add_subpackage
        caller_level = 2)
      File "/usr/local/lib/python2.7/site-packages/numpy/distutils/misc_util.py", line 971, in get_subpackage
        caller_level = caller_level + 1)
      File "/usr/local/lib/python2.7/site-packages/numpy/distutils/misc_util.py", line 908, in _get_configuration_from_setup_py
        config = setup_module.configuration(*args)
      File "/private/var/folders/rd/fplkflh93ls54kbl5ylphl4h0000gn/T/pip-build/scipy/scipy/special/setup.py", line 54, in configuration
        extra_info=get_info("npymath")
      File "/usr/local/lib/python2.7/site-packages/numpy/distutils/misc_util.py", line 2220, in get_info
        pkg_info = get_pkg_info(pkgname, dirs)
      File "/usr/local/lib/python2.7/site-packages/numpy/distutils/misc_util.py", line 2172, in get_pkg_info
        return read_config(pkgname, dirs)
      File "/usr/local/lib/python2.7/site-packages/numpy/distutils/npy_pkg_config.py", line 390, in read_config
        v = _read_config_imp(pkg_to_filename(pkgname), dirs)
      File "/usr/local/lib/python2.7/site-packages/numpy/distutils/npy_pkg_config.py", line 326, in _read_config_imp
        meta, vars, sections, reqs = _read_config(filenames)
      File "/usr/local/lib/python2.7/site-packages/numpy/distutils/npy_pkg_config.py", line 309, in _read_config
        meta, vars, sections, reqs = parse_config(f, dirs)
      File "/usr/local/lib/python2.7/site-packages/numpy/distutils/npy_pkg_config.py", line 281, in parse_config
        raise PkgNotFound("Could not find file(s) %s" % str(filenames))
    numpy.distutils.npy_pkg_config.PkgNotFound: Could not find file(s) ['/usr/local/lib/python2.7/site-packages/numpy/core/lib/npy-pkg-config/npymath.ini']

私は Mountain Lion を使用しており、自作を使用してインストールした python 2.7.3 と、pip install numpy を使用して numpy をインストールしました。

scipy のインストールが失敗するのはなぜですか?

4

4 に答える 4

9

これは、コンパイルされたライブラリを site-packages ディレクトリにコピーしない pip と numpy の問題のようです。

pipを使用してvirtualenvにインストールするか(私にとってはうまくいきました)、またはを使用してソースからインストールできます

python setup.py install

方法。

ここに問題に関するいくつかのコメントがあります:

http://www.thisisthegreenroom.com/2011/installing-python-numpy-scipy-matplotlib-and-ipython-on-lion/

于 2012-09-29T11:27:30.270 に答える
8

自作を使用している場合は、次のことを試すことができます(https://github.com/pypa/pip/issues/707に感謝):

brew tap samueljohn/homebrew-python
brew install numpy
brew install scipy
于 2013-01-05T09:35:04.233 に答える
4

を使用しない場合はvirtualenv、手動で編集するのが最も邪魔にならない修正方法です/usr/local/lib/python2.7/site-packages/pip-1.2.1-py2.7.egg/pip/locations.py(pip のバージョンは異なる場合があります)。以下の 35 行目を置き換えるだけです。

build_prefix = os.path.join(tempfile.gettempdir(), 'pip-build') 

に:

build_prefix = os.path.realpath(os.path.join(tempfile.gettempdir(), 'pip-build')) 

この変更後、再インストールする必要がありますnumpy( pip uninstall numpy; pip install numpy)。その後scipy、pipで正しくインストールできます。

この問題は pip バグが原因です。上記の解決策は、github ユーザー qwcode からの pip パッチ( Lokkju が言及した問題の議論で提案されている) によるものです。このパッチは、メインの pip リポジトリにマージされたようです。ただし、Python にバンドルされているため、update pip を簡単に作成する方法がわかりません。したがって、この簡単な修正を手動で行うだけでうまくいきます。

于 2013-03-23T21:06:07.017 に答える
0

2015 年に MacOSX Yosemite で同じ問題が発生しました。pipの古いバージョンのバグが原因だと思います。pip をアンインストールして最新バージョンを入手すると役立ちます。https://pip.pypa.io/en/latest/installing.html からpip を取得してから

$ sudo pip uninstall scipy
$ sudo pip install scipy
于 2015-04-20T12:40:47.657 に答える