Python 使用pip/virtualenv和XCode 4.6.3在MacOS Mountain Lion上的SciPy测试失败
我在运行一个名为nsilk的质谱代码时遇到了一个问题,它依赖于NumPy、SciPy和BioPython。因为我在Mac(Mountain Lion)上运行了其他基于Python的项目,所以我想使用virtualenv/pip分离虚拟环境,以便安装nsilk 运行nsilk命令后(我已使用“which”检查它是否指向驻留在虚拟环境中的版本,而不是系统范围的安装),我收到以下回溯:Python 使用pip/virtualenv和XCode 4.6.3在MacOS Mountain Lion上的SciPy测试失败,python,macos,gcc,scipy,pip,Python,Macos,Gcc,Scipy,Pip,我在运行一个名为nsilk的质谱代码时遇到了一个问题,它依赖于NumPy、SciPy和BioPython。因为我在Mac(Mountain Lion)上运行了其他基于Python的项目,所以我想使用virtualenv/pip分离虚拟环境,以便安装nsilk 运行nsilk命令后(我已使用“which”检查它是否指向驻留在虚拟环境中的版本,而不是系统范围的安装),我收到以下回溯: Traceback (most recent call last): File "/usr/local/bin/
Traceback (most recent call last):
File "/usr/local/bin/nsilk", line 32, in <module>
import xllib
File "/Library/Python/2.7/site-packages/xllib/__init__.py", line 30, in <module>
import MSMS
File "/Library/Python/2.7/site-packages/xllib/MSMS.py", line 32, in <module>
import scipy.stats as ss
ImportError: No module named scipy.stats
但是,当我运行scipy.test()时,会收到大量错误:
>>> import scipy
>>> scipy.test()
以下是前三项:
======================================================================
ERROR: test_logm_consistency (test_matfuncs.TestExpM)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/Users/Mike/venvs/nsilk/lib/python2.7/site-packages/scipy/sparse/linalg/tests/test_matfuncs.py", line 55, in test_logm_consistency
assert_array_almost_equal(expm(logm(a)), a)
File "/Users/Mike/venvs/nsilk/lib/python2.7/site-packages/scipy/linalg/matfuncs.py", line 387, in logm
errest = norm(expm(F)-A,1) / norm(A,1)
File "/Users/Mike/venvs/nsilk/lib/python2.7/site-packages/scipy/linalg/matfuncs.py", line 55, in expm
return scipy.sparse.linalg.expm(A)
File "/Users/Mike/venvs/nsilk/lib/python2.7/site-packages/scipy/sparse/linalg/matfuncs.py", line 85, in expm
A_L1 = norm(A,1)
File "/Users/Mike/venvs/nsilk/lib/python2.7/site-packages/scipy/linalg/misc.py", line 116, in norm
a = np.asarray_chkfinite(a)
File "/Users/Mike/venvs/nsilk/lib/python2.7/site-packages/numpy/lib/function_base.py", line 590, in asarray_chkfinite
"array must not contain infs or NaNs")
ValueError: array must not contain infs or NaNs
======================================================================
FAIL: test_asum (test_blas.TestFBLAS1Simple)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/Users/Mike/venvs/nsilk/lib/python2.7/site-packages/scipy/lib/blas/tests/test_blas.py", line 62, in test_asum
assert_almost_equal(f([3,-4,5]),12)
File "/Users/Mike/venvs/nsilk/lib/python2.7/site-packages/numpy/testing/utils.py", line 468, in assert_almost_equal
raise AssertionError(msg)
AssertionError:
Arrays are not almost equal to 7 decimals
ACTUAL: 0.0
DESIRED: 12
======================================================================
FAIL: test_dot (test_blas.TestFBLAS1Simple)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/Users/Mike/venvs/nsilk/lib/python2.7/site-packages/scipy/lib/blas/tests/test_blas.py", line 71, in test_dot
assert_almost_equal(f([3,-4,5],[2,5,1]),-9)
File "/Users/Mike/venvs/nsilk/lib/python2.7/site-packages/numpy/testing/utils.py", line 468, in assert_almost_equal
raise AssertionError(msg)
AssertionError:
Arrays are not almost equal to 7 decimals
ACTUAL: 0.0
DESIRED: -9
我使用pip安装了NumPy、SciPy和BioPython,在安装了XCode 4.6.3之后,使用GCC 4.8.0 20120603(实验版)。我最初在安装SciPy时遇到了麻烦,因为它缺少一个名为LibFFTPack(或类似)的库而失败
谷歌搜索错误导致需要为XCode安装Fortran编译器。这“修复”了在执行pip时对SciPy编译的那些回溯,但导致了上述问题!我猜想是由于某些编译错误导致了SciPy的错误安装。这里可能存在编译器/二进制混合问题吗
干杯,迈克
======================================================================
ERROR: test_logm_consistency (test_matfuncs.TestExpM)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/Users/Mike/venvs/nsilk/lib/python2.7/site-packages/scipy/sparse/linalg/tests/test_matfuncs.py", line 55, in test_logm_consistency
assert_array_almost_equal(expm(logm(a)), a)
File "/Users/Mike/venvs/nsilk/lib/python2.7/site-packages/scipy/linalg/matfuncs.py", line 387, in logm
errest = norm(expm(F)-A,1) / norm(A,1)
File "/Users/Mike/venvs/nsilk/lib/python2.7/site-packages/scipy/linalg/matfuncs.py", line 55, in expm
return scipy.sparse.linalg.expm(A)
File "/Users/Mike/venvs/nsilk/lib/python2.7/site-packages/scipy/sparse/linalg/matfuncs.py", line 85, in expm
A_L1 = norm(A,1)
File "/Users/Mike/venvs/nsilk/lib/python2.7/site-packages/scipy/linalg/misc.py", line 116, in norm
a = np.asarray_chkfinite(a)
File "/Users/Mike/venvs/nsilk/lib/python2.7/site-packages/numpy/lib/function_base.py", line 590, in asarray_chkfinite
"array must not contain infs or NaNs")
ValueError: array must not contain infs or NaNs
======================================================================
FAIL: test_asum (test_blas.TestFBLAS1Simple)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/Users/Mike/venvs/nsilk/lib/python2.7/site-packages/scipy/lib/blas/tests/test_blas.py", line 62, in test_asum
assert_almost_equal(f([3,-4,5]),12)
File "/Users/Mike/venvs/nsilk/lib/python2.7/site-packages/numpy/testing/utils.py", line 468, in assert_almost_equal
raise AssertionError(msg)
AssertionError:
Arrays are not almost equal to 7 decimals
ACTUAL: 0.0
DESIRED: 12
======================================================================
FAIL: test_dot (test_blas.TestFBLAS1Simple)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/Users/Mike/venvs/nsilk/lib/python2.7/site-packages/scipy/lib/blas/tests/test_blas.py", line 71, in test_dot
assert_almost_equal(f([3,-4,5],[2,5,1]),-9)
File "/Users/Mike/venvs/nsilk/lib/python2.7/site-packages/numpy/testing/utils.py", line 468, in assert_almost_equal
raise AssertionError(msg)
AssertionError:
Arrays are not almost equal to 7 decimals
ACTUAL: 0.0
DESIRED: -9