簡體   English   中英

我可以為 python 的多個版本創建一個雞蛋嗎?

[英]Can I create a single egg for multiple versions of python?

我們有一個通過一系列雞蛋運行的本地系統。 目前這意味着每個人都必須安裝 Python 2.5 的副本。 是否有可能創建一個可供 Python 2.5、2.6 和 2.7(最好是任何更高版本)使用的雞蛋?

顯然,python 代碼必須在所有三個版本下運行。 同樣明顯的是,這個蛋不能包含任何 C 擴展。 不太明顯的是,egg 必須包含 python 源 (.py) 文件,而不是 .pyc 文件。

另外,我知道我們可以創建三個雞蛋(或者可能復制一個具有三個名稱的雞蛋)——但這似乎是錯誤的。

僅分發源 tarball; 易於安裝(或 pip 或構建,或任何 package 依賴項管理器/安裝程序)將為您創建一個用於安裝它的 python 版本的雞蛋。

您只需要為帶有 C 擴展名的包創建分發雞蛋,然后只為 Windows 因為大多數 Windows 系統缺乏自己構建雞蛋所需的工具。

看看 PyPI 可以看到很多這樣的例子,比如zope.interface 頁面 請注意,對於 Windows,python 版本 2.4、2.5 和 2.6 中只有 .egg 發行版。 其他一切只使用.tar.gz壓縮包下載並根據需要在本地構建.egg

您可以使用setup.py sdist命令構建源 tarball。 就個人而言,我使用jarn.mkrelease 它為您自動化了大部分過程(例如將源分發上傳到分發服務器)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM