我运行Ubuntu 9:10,安装了一个名为M2Crypto的包(版本为0.19.1)。我需要下载、构建和安装最新版本的M2Crypto包(0.20.2)。
0.19.1包的文件位于多个位置,包括(/usr/share/ pshared和/usr/lib/pymodules.python2.6)。
在安装0.20.2之前,如何从系统中完全卸载0.19.1版本?
我运行Ubuntu 9:10,安装了一个名为M2Crypto的包(版本为0.19.1)。我需要下载、构建和安装最新版本的M2Crypto包(0.20.2)。
0.19.1包的文件位于多个位置,包括(/usr/share/ pshared和/usr/lib/pymodules.python2.6)。
在安装0.20.2之前,如何从系统中完全卸载0.19.1版本?
当前回答
您可能想要查看像pip这样的Python包管理器。如果您不想使用Python包管理器,您应该能够下载M2Crypto并在旧的安装上构建/编译/安装。
其他回答
要自动升级所有过时的包(使用pip安装的),只需运行下面的脚本,
pip install $(pip list --outdated | awk '{ print $1 }') --upgrade
这里,pip list——outdated将列出所有过期的包,然后我们将其管道到awk,因此它将只打印名称。 然后,$(…)将使它成为一个变量,然后,一切都自动完成。确保您拥有权限。(如果你不明白,可以把sudo放在pip前面) 我会写一个名为pip-upgrade的脚本 代码如下,
#!/bin/bash
sudo pip install $(pip list --outdated | awk '{ print $1 }') --upgrade
然后使用以下脚本行来准备它:
sudo chmod +x pip-upgrade
sudo cp pip-upgrade /usr/bin/
然后,点击pip-upgrade,瞧!
软件包最初是如何安装的?如果是通过apt,你可以只做apt-get remove python-m2crypto
如果您通过easy_install安装它,我非常确定唯一的方法是丢弃lib、shared等目录下的文件。
我将来的建议是什么?使用像pip这样的工具来安装软件包。此外,您还可以查找名为virtualenv的东西,以便将包存储在每个环境的基础上,而不是仅存储在根目录上。
对于pip来说,这很简单:
pip install m2crypto
但是你也可以用正确的地址从git, svn等reppos安装。这些都在pip文档中进行了解释
我认为最好的一句话是:
pip install --upgrade <package>==<version>
pip install -U $(pip list --outdated | awk 'NR>2 {print $1}')
您可能想要查看像pip这样的Python包管理器。如果您不想使用Python包管理器,您应该能够下载M2Crypto并在旧的安装上构建/编译/安装。