6

当我尝试通过以下方式在 Suse(openSuse 12.2 x86_64)服务器上安装 scikit-learn 时:

pip install -U scikit-learn

我收到以下错误:

(....)

compile options: '-I/usr/lib64/python2.7/site-packages/numpy/core/include -Isklearn/svm/src/libsvm -I/usr/lib64/python2.7/site-packages/numpy/core/include -I/usr/include/python2.7 -c'

gcc: sklearn/svm/libsvm.c

sklearn/svm/libsvm.c:303:31: fatal error: numpy/arrayobject.h: No such file or directory

compilation terminated.

sklearn/svm/libsvm.c:303:31: fatal error: numpy/arrayobject.h: No such file or directory

compilation terminated.

我已经尝试过:

- 将 gcc 安装到最新版本
- 通过 easy_install 从下载的 zip 安装 scikit(以避免旧的 repos) - 卸载并重新安装 numpy(通过 pip)

当我尝试安装 scipy (这是 numpy 的要求)时,我得到一个类似的错误:

adding 'build/src.linux-x86_64-2.7/fortranobject.c' to sources.

adding 'build/src.linux-x86_64-2.7' to include_dirs.

error: file '/usr/lib64/python2.7/site-packages/numpy/f2py/src/fortranobject.c' does not exist

显然,“site-packages/numpy/core/include”中的所有 numpy 标头都丢失了。我已经用 pip 重新安装了 numpy,没有任何问题,但标题仍然丢失。

4

1 回答 1

11

好的,当我使用 pip 安装 numpy 时,或者通常所有包含标头都丢失了。

为了解决这个问题,我安装了包含头文件的包“python-numpy-devel”(带有 zypper、愚蠢的 suse 包名......)。

之后,标题就在那里,其余的工作。

于 2013-08-21T13:37:37.303 回答