這個問題是關於Python在另一個程序中的集成。如果我鏈接到Python,我有一個名爲python27.lib
或更早的2.x版本的類似文件(例如python26.lib
)的導入庫。顯然,Python 3.x稍微改變了規則,因爲我在libs
文件夾中找到python3.lib
和python33.lib
。在集成Python時需要匹配多少版本?
看看導入庫的成員,看起來很清楚,例如2.6和2.7之間不會有兼容性。 但是,我是否可以假設Python 2.7.3的import lib可以使用較舊的Python 2.7 DLL,例如2.7.2還是2.7.1?我不會將Python與我的應用程序一起部署,而是希望基於已經設置的Python提供Python集成作爲選項。
獎金的問題:給出在Python 3名稱變更和python3.dll
似乎包含函數的出口代理,我可以假設,對鏈接將python3.lib
與開始與3.0任何的Python 3.x版工作的事實?
謝謝!你也有第一段的來源嗎? – 0xC0000022L 2013-05-14 13:27:37
不立即。這是CPython開發過程的一個副作用:微版本不應該引入新功能,並且在修補程序版本中更改ABI是一個很大的禁忌。修補程序版本的目標是使更新python安裝成爲可能,並確保一切正常運行(禁止發佈中的意外錯誤,以及恰好依賴存在已修復錯誤的代碼) – 2013-05-14 13:57:57
您可以檢查Python版本之間的二進制兼容性 - http://upstream.rosalinux.ru/versions/python.html – 2015-01-24 14:48:31