2009-05-29 77 views
0

Fedora Core 9包含Python 2.5.1。我可以使用YUM获取最新和最好的版本。Fedora Python升级破解easy_install

为了准备2.6官方测试,我想从2.5.4开始。看起来没有Fedora 9 YUM包,因为2.5.4不是FC9的官方部分。

我下载2.5.4,没有./configure; make; make install和伤口了两条蟒蛇。官方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硬连线本身?]

  • Relink /usr/bin/python/usr/local/bin/python。我仍然需要复制或重新安装库,所以我认为这对我没有好处。 [这将使easy_install工作;但这样会编辑/usr/bin/easy_install]

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

或者我应该修正easy_install,只需通过安装向导步骤,并建立一个新的,干净的,最新的,和最伟大的?


编辑

或者,我应该

  • 跳过试图解决2.5.1和2.5.4的问题,只是直接跳转到2.6?

回答

4

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

如果您需要同时安装两个微版本,我会将2.5.4完全保留在您的路径之外,或者允许它完全打开另一个(尽管如此,自担风险) 如果您与前者一起使用,您还可以使用PYTHONPATH环境变量将2.5.4指向您的站点包。

Ubuntu采取不同的路线,这就是你如何处理不同的主要版本。蟒蛇二进制给出附加版本:

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

每间都设有所有模块的版本自己/usr/lib/python2.X目录。

最后,您可以进一步自定义您的设置modifying your site.py

2

我建议你创建一个安装包成的virtualenv(或几个)。

2

我在安装Python 2.5的老版本的ubuntu上提供了2.4开箱即用的类似经历和问题。

我第一次尝试修补easy_install,但是这导致了与任何想要使用Python的操作系统提供的版本问题。我经常摆弄工具链来修复每次安装时可能出现的不同错误。通过apt安装任何python软件,或者安装任何安装了python easy_install脚本的apt软件,都是很有趣的。我相信我可能在修补easy_install时更加警惕,但我放弃了。

取而代之,我复制了库,并且一切正常。正如你所说,根据你的安装情况可能有问题,但我没有遇到问题。仔细检查Python的site.py模块,我确实发现它完全在相对路径上运行,动态构建绝对路径;这给了我一些信心去尝试“复制一切”的方法。我仔细检查了任何.pth文件,然后去了。