安装python-scitools和matplotlib依赖项
我正在尝试通过命令'sudo apt-get install python-scitools'来安装python-scitools。
The following extra packages will be installed:
python-matplotlib
Suggested packages:
python-excelerator python-matplotlib-doc python-traits python-wxgtk2.8octave
The following NEW packages will be installed:
python-matplotlib python-scitools
0 upgraded, 2 newly installed, 0 to remove and 203 not upgraded.
Need to get 0 B/2,596 kB of archives.
After this operation, 9,250 kB of additional disk space will be used.
Do you want to continue [Y/n]?
问题是我已经手动安装了python-matplotlib(因为我需要最新版本1.2.0)。
如果我在ipython中输入'matplotlib.path',它会返回
['/usr/local/lib/python2.7/dist-packages/matplotlib']
我的问题是,我该如何告诉系统,matplotlib已经安装了呢?
正如你所猜的,我对这些东西还是个新手。
谢谢你
2 个回答
你有没有试过:
sudo apt-get remove python-matplotlib
通过apt-get来卸载matplotlib?一旦你卸载了这个,你需要确保你的系统能够找到你手动安装的matplotlib,不过我猜你在安装的时候已经做过这一步了。
手动安装软件和通过包管理器安装软件这两种方式不太兼容。你可以在已有的包上进行开发,但反过来就不太容易了。
包管理器(比如 apt
)会检查它内部数据库里的依赖关系,它认为 matplotlib
没有安装,这是正常的。这其实是个功能,而不是问题,因为这样可以让包管理系统快速判断依赖是否安装。你可以尝试自己制作一个 .deb
文件来安装,但这可能会有点麻烦,因为你需要了解 Debian 的构建系统。
你可以安装打包好的版本,然后确保你手动安装的版本在 PYTHONPATH
中的优先级高于系统版本。这样会占用一些硬盘空间,但也没关系。(你可以通过 setup.py install --prefix=/path/to/where/ever
来设置安装路径)。
PYTHONPATH
是一个环境变量,你可以用很多方法来设置它。
PYTHONPATH=/your/path:$PYTHONPATH ipython
这样设置的变量只对一个进程有效。你也可以把
PYTHONPATH=/your/path:$PYTHONPATH
export PYTHONPATH
添加到你的 .bashrc
(或者 .bash_profile
,我总是搞混这两个的作用),这样每次打开终端时都会运行。
如果这样还不行,你可能需要使用打包好的 matplotlib
版本(这可能需要先删除你当前的安装),或者手动安装所有依赖于 matplotlib
的软件。