繁体   English   中英

Fedora Python升级失败了easy_install

[英]Fedora Python Upgrade broke easy_install

Fedora Core 9包含Python 2.5.1。 我可以使用YUM来获取最新和最好的版本。

为了准备2.6正式测试,我想从2.5.4开始。 似乎没有Fedora 9 YUM软件包,因为2.5.4并不是FC9的正式组成部分。

我下载了2.5.4,做了./configure; make; make install ./configure; make; make install ./configure; make; make install并用两个Python结束。 官方2.5.1(在/usr/bin )和新的2.5.4。 (在/usr/local/bin )。

我的技术堆栈都没有安装在/usr/local/lib/python2.5

看来我有几种选择可以前进。 有人有什么喜好吗?

  • 将/usr/lib/python2.5/*复制到/usr/local/lib/python2.5以复制我的环境。 除非安装过程中连接了某些Python库的/ usr / bin / python,否则这应该可行。 这肯定很简单,但是有缺点吗?

  • 通过运行easy_install重新安装所有内容。 除外, easy_install (当前)被硬连接到/usr/bin/python 因此,我必须先修复easy_install ,然后再重新安装所有内容。

    这需要一些时间,但是它为我提供了一个全新的,最新的,干净的环境。 但是有缺点吗? [为什么easy_install本身会硬接线?]

  • /usr/bin/python重新链接为/usr/local/bin/python 我仍然必须复制或重新安装该库,所以我认为这对我没有任何好处。 [它将使easy_install起作用; 但是编辑/usr/bin/easy_install 。]

有没有人复制他们的图书馆? 这么简单吗?

还是我应该修复easy_install并简单地逐步阅读安装指南并构建一个新的,干净的,最新的和最新的?


编辑

或者,我应该

  • 跳过尝试解决2.5.1和2.5.4问题,而直接跳到2.6吗?

通常,您只会安装一个版本的python版本。 由于2.5.1和2.5.4来自同一版本,因此复制库应该可以正常工作。 您需要注意的是,您现在的路径中有/ usr / bin / python和/ usr / local / bin / python,有些实用程序可能会感到困惑。

如果您需要一次安装两个微型发行版,那么我将把2.5.4完全排除在外,或者让它完全破坏另一个版本(不过,这需要您自担风险;)如果选择前者,您还可以使用PYTHONPATH环境变量将2.5.4指向您的站点包。

Ubuntu采取了不同的途径,这就是您处理不同主要版本的方式。 python二进制文件带有附加的版本:

/usr/bin/python -> python2.6
/usr/bin/python2.5
/usr/bin/python2.6

每个模块都有自己的/usr/lib/python2.X目录,其中包含所有模块的版本。

最后,您可以通过修改site.py进一步自定义设置

我建议您创建一个virtualenv(或多个)以将软件包安装到其中。

在提供2.4的较早版本的ubuntu上安装Python 2.5时,我也遇到过类似的问题。

我首先尝试修补easy_install ,但是这导致了任何想要使用操作系统提供的python版本的问题。 我经常摆弄工具链来修复每次安装时可能出现的各种错误。 通过apt安装任何python软件,或者从apt安装任何包含python easy_install脚本作为安装一部分的软件,通常都很有趣。 我敢肯定,在修补easy_install可能会更加警惕,但我放弃了。

相反,我复制了库,一切正常。 正如您所说,根据您所安装的内容,可能会出现问题,但是我没有遇到任何问题。 site.py检查Python的site.py模块,我确实看到它完全在相对路径上运行,动态地建立绝对路径。 这使我有信心尝试“复制所有内容”方法。 我仔细检查了所有.pth文件,然后进行检查。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM