多个版本的Python Linux之间的模块

时间:2011-02-14 11:02:25

标签: python

我的linux机器上有Python2.6.5和Python2.4.4。

目前,我所拥有的所有模块(wx,ply,pyserial,twisted,仅举几例)都安装了2.6版本的python。如果我在Python2.4上尝试import wx,我会得到预期的无模块错误。

这里的问题是,我有很多设备(假设超过一千个)都运行2.4.4,很快就需要这台机器支持(用于构建代码,发布等)。到目前为止,我一直在使用EeePC(与我支持的设备相同的设备)进行构建和发布,效果很好。 (我在2.6机器上开发,并在EeePC上构建)。

我如何让这些模块适用于Python2.4?我已经尝试重新安装(使用2.4作为我的主要版本),但这只会导致错误。我发现的博客/答案说使用easy_install,但这不支持我需要的软件包(或者至少,它在我尝试时就已经死了)。

简而言之:我目前正在使用python 2,6,但我希望所有模块都改为2.4,因为这就是我将要使用的。

2 个答案:

答案 0 :(得分:5)

您不能在不同版本的Python之间共享模块。如果要使用Python 2.4中的wxPython,则需要为Python 2.4安装它。

你说过你尝试用Python 2.4安装它作为你的“主要”。我不确定这意味着什么。您可以通过使用Python 2.4运行安装程序来安装Python 2.4的wxPython,如下所示:

$sudo /usr/bin/python2.4 setup.py install

或类似。

您也可以使用easy_install,但是您需要先安装Distribute for Python 2.4。你做到了吗?

我最近在我的博客上写了一篇关于此问题的完整说明:http://regebro.wordpress.com/2011/02/02/newbie-hint-on-installing-python-and-its-modules-and-packages/

答案 1 :(得分:3)

不要试图分享它们;这对于纯Python模块有一定的成功机会,但C模块将无法工作。而是使用适当的解释器可执行文件安装它们,例如python2.4 setup.py install