将 scipy 升级到最新版本

将 scipy 升级到最新版本

我正在运行 Ubuntu 14.04。我有 scipy 0.13.3,我想升级它。

我努力了:

sudo pip3 install scipy --upgrade

但我收到这个错误:

creating build/lib.linux-x86_64-3.4/scipy/_build_utils

copying scipy/_build_utils/__init__.py ->
build/lib.linux-x86_64-3.4/scipy/_build_utils

copying scipy/_build_utils/_fortran.py ->
build/lib.linux-x86_64-3.4/scipy/_build_utils

running build_clib
customize UnixCCompiler
customize UnixCCompiler using build_clib
building 'dfftpack' library
Running from scipy source directory.

"object of type 'type' has no len()" in evaluating 'len(list)'
(available names: [])

"object of type 'type' has no len()" in evaluating 'len(list)'
(available names: [])

"object of type 'type' has no len()" in evaluating 'len(list)'
(available names: [])

"object of type 'type' has no len()" in evaluating 'len(list)'
(available names: [])

"object of type 'type' has no len()" in evaluating 'len(list)'
(available names: [])

"object of type 'type' has no len()" in evaluating 'len(list)'
(available names: [])

error: library dfftpack has Fortran sources but no Fortran compiler found

----------------------------------------   
Rolling back uninstall of scipy Cleaning up... 
Command /usr/bin/python3 -c "import setuptools, 
tokenize;__file__='/tmp/pip_build_root/scipy/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), file__,
'exec'))" install --record /tmp/pip-h0l8itnj-record/install-record.txt
--single-version-externally-managed --compile failed with error code 1 in /tmp/pip_build_root/scipy Storing debug log for failure in  /home/donbeo/.pip/pip.log 

donbeo@donbeo-HP-EliteBook-Folio-9470m:~$
python3

我该如何解决这个问题?我正在安装几乎全新的 Ubuntu 14.04。

答案1

我在新安装的 14.04 上遇到了同样的错误。我通过确保安装了所有 scipy 依赖项来修复此问题:

sudo apt-get install python-pip python-dev build-essential libatlas-base-dev gfortran

我认为这是sudo apt-get install gfortran必要的。如果你先尝试一下并告诉我们结果如何,那将会很有帮助。

这是来自这个帖子:https://www.kaggle.com/c/avazu-ctr-prediction/forums/t/12478/kaggler-python-package-for-kaggler

答案2

我在 Stack Overflow 上看到您的问题:如何在 Windows 上的 winpython 中更新 scipy?,您希望将 scipy 更新到 0.14 版。有一种比使用 pip3 更简单的方法可以将 python3-scipy 0.13.3 升级到 python3-scipy 0.14.0。

  1. 卸载 python3-scipy。

    sudo apt-get remove python3-scipy
    
  2. 下载适用于 Ubuntu 14.10 的 python3-scipy 软件包。
    访问http://packages.ubuntu.com/utopic/python3-scipy,选择与您的操作系统架构相匹配的python3-scipy版本,选择镜像,下载python3-scipy .deb文件。

  3. 安装适用于 Ubuntu 14.10 的 python3-scipy 软件包。
    双击下载的 python3-scipy .deb 文件,在 Ubuntu 软件中心将其打开,然后像安装其他软件包一样进行安装。适用于 Ubuntu 14.10 的 python3-scipy .deb 文件与 Ubuntu 软件中心的 python3-scipy 软件包具有相同的依赖软件包版本,因此它应该可以毫无问题地安装在 Ubuntu 14.04 中。

在 Ubuntu 16.04 中,可以从默认的 Ubuntu 存储库安装 python3-scipy 0.16.1。

相关内容