2013-03-14 131 views
2

我需要支持一些使用舊Python版本(2.4)的軟件。所以我已經下載並編譯Python 2.4並將其安裝在virtualenv中。到目前爲止,一切正常和正常的程序。爲(非系統)Python安裝rpm模塊

但該軟件試圖導入rpm模塊。我無法找到該模塊的源代碼(它不是標準Python庫的一部分,afaict)。

通常,一旦啓用virtualenv(source env/bin/activate),我可以使用easy_install安裝所需的軟件。但easy_install rpm未能找到任何東西。有一個pyrpm模塊,但它不是一回事(它安裝了一個名爲「pyrpm」的模塊)。谷歌搜索是無用的,因爲它們都鏈接到如何建立RPM的文章...

如果我使用的是系統python(在Ubuntu上),我可以安裝python-rpm包。但是這是針對Python 2.7的。我如何安裝Python 2.4的等價物?

[我的印象是許多Linux系統使用的rpm庫包含一個Python庫,它由發行版打包爲python-dev。但我不明白如何訪問任意python版本。]

我不想看到一個包含PYTHON的RPM 2.4。我正在尋找一種模塊命名爲rpm的軟件,用於PYTHON 2.4。

+0

約從源代碼編譯,而不是安裝RPM怎麼樣? – Raptor 2013-03-14 14:52:56

+0

當然,但來源在哪裏?並通過「安裝rpm」你是什麼意思?你有誤解過q嗎? easy_install *基本上是從源代碼安裝的。 – 2013-03-14 14:53:37

+0

Python 2.4.6:http://www.python.org/download/releases/2.4.6/ – Raptor 2013-03-14 14:55:25

回答

0

有沒有簡單的方法來做到這一點; python庫是系統rpm包的一部分,並且與C代碼接口,所以它與你的機器上安裝的rpm包密切相關。相反,在使用Python 2.4的虛擬機(例如CentOS 5)中安裝舊操作系統要簡單得多。那麼一切都是一致的和有效的。在您下載想要的版本閱讀並遵循以編譯你的目標OS安裝說明http://www.rpm.org/wiki/Download

1

它就在那裏,在Python-rpm的RPM包:

http://rpmfind.net/linux/rpm2html/search.php?query=python-rpm

你可能會想下載軟件包內容提取出來,然後用

python setup.py install 

從你活躍的環境。

當然,因爲它是預編譯的,所以您可能在獲取C擴展運行時遇到問題。

我對RPM的知之甚少,不知道是否可以從那裏獲取源代碼。


不保證軟件包可以和你的python版本一起工作。

+0

這是非常hacky:o( – 2013-03-14 15:08:23

+0

@andrewcooke你可以從更改日誌中獲取電子郵件地址,並向維護人員詢問路線。可能有版本控制下的某個源代碼! – 2013-03-14 15:21:41

1

對於RPM模塊的源可以在這裏找到。之後,確保將正確的路徑添加到安裝選擇到您的PYTHONPATH環境變量中的「site-packages」文件夾中。

要測試啓動Python解釋器和運行 '進口轉'

HTH,

+0

安裝* everything * - 您將獲得rpm包和python包裝,它不會爲你現有的系統rpm包提供一個包裝。 – 2013-09-03 08:42:27