安装 Theano 时由于 scipy 权限被拒绝

Permission denied due to scipy while installing Theano

我正在我不是 root 的服务器上安装 Theano。

我运行

pip install Theano --user

其中returns出现以下错误

Installing collected packages: scipy
  Found existing installation: scipy 0.9.0
    Uninstalling scipy:
Exception:
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/pip/basecommand.py", line 126, in main
    self.run(options, args)
  File "/usr/lib/python2.7/dist-packages/pip/commands/install.py", line 228, in run
    requirement_set.install(install_options, global_options)
  File "/usr/lib/python2.7/dist-packages/pip/req.py", line 1089, in install
    requirement.uninstall(auto_confirm=True)
  File "/usr/lib/python2.7/dist-packages/pip/req.py", line 476, in uninstall
paths_to_remove.remove(auto_confirm)
  File "/usr/lib/python2.7/dist-packages/pip/req.py", line 1391, in remove
renames(path, new_path)
  File "/usr/lib/python2.7/dist-packages/pip/util.py", line 248, in renames
shutil.move(old, new)
  File "/usr/lib/python2.7/shutil.py", line 300, in move
os.unlink(src)
OSError: [Errno 13] Permission denied: '/usr/share/pyshared/scipy-0.9.0.egg-info'

很明显,Theano 想要安装 scipy,但是它已经安装了,所以它尝试先卸载它,这带来了权限问题。

我怎样才能避免卸载 scipy,而是使用现有的?

问题是不推荐您安装的scipy版本。 Theano 通常至少需要 0.11 版本才能工作。您的版本似乎也可以使用,但有一些已知错误。 (Installation Instructions) 如果你想使用你的旧版本并冒​​着错误的风险,你应该能够使用:

pip install Theano --user --no-dependencies

注意另外两个需求numpy和six也不会被检查和更新