0

我正在尝试通过“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)。

如果我提示'matplotlib. path ' 在 ipython 中,它返回

['/usr/local/lib/python2.7/dist-packages/matplotlib']

我的问题是,我怎样才能告诉系统,matplotlib 已安装?

正如你猜到的,我对这件事很业余。

谢谢你

4

2 回答 2

0

你有没有尝试过:

  sudo apt-get remove python-matplotlib

要通过 apt-get 删除 matplotlib 安装?完成后,您需要确保您的系统可以找到您手动安装的 matplotlib,但我怀疑您在安装过程中已经这样做了。

于 2013-01-31T17:39:55.477 回答
0

手动安装与通过包管理器安装并不能很好地结合在一起。你总是可以在包之上构建你想要的任何东西,但你不能(轻易地)走另一条路。

正在做的依赖检查apt是针对它的内部数据库的,它正确地认为matplotlib没有安装。这是一个特性,而不是错误,因为它允许打包系统非常快速地确定是否安装了依赖项。您可能可以自己构建.deb来安装,但这可能有点麻烦(因为它涉及到了解 debian 构建系统)。

您也许可以安装打包版本,只需确保您手动安装的版本高于PYTHONPATH系统版本。它浪费了一点硬盘空间,但是嗯。(您可以通过 设置安装路径的位置setupy.py install --prefix=/path/to/where/ever)。

PYTHONPATH是一个环境变量,因此您可以使用多种方法对其进行设置。

PYTHONPATH=/your/path:$PYTHONPATH ipython

将为一个进程设置变量。您还可以添加

PYTHONPATH=/your/path:$PYTHONPATH
export PYTHONPATH

到你的.bashrc(或者.bash_profile,我总是把这两个角色混在一起),每次你启动一个 shell 时都会运行它。

如果这不起作用,您可能需要使用打包版本matplotlib(这可能需要删除您当前的安装),或者手动安装您想要的一切,这取决于matplotlib.

于 2013-01-31T18:02:06.197 回答