2009-12-21 59 views
3

我需要爲我的用戶重新發布Python 2.6。如何正確地將python安裝和安裝到windows用戶

目前,我從http://www.python.org/download/執行msi安裝程序的無提示安裝,但是我遇到了一些問題,例如安裝了其他版本的python,但沒有得到默認設置。

另一方面,儘管這可能很罕見,但如果用戶已經安裝了python並且我自己安裝了,那麼可能會導致衝突。

那麼,哪個最好的行動詛咒?如何自動執行此安裝?我已經有http://installbuilder.bitrock.com,但可用的Django堆棧對我的應用來說太大了,我需要預先安裝幾個python模塊。

我不知道在這種情況下的virtualenv將是最好的選擇,但仍然有正確安裝的問題...

+0

這可能沒有幫助,但是您是否真的需要將Python作爲常規安裝來分發?有一些像py2exe這樣的與InnoSetup等安裝程序構建者協同工作,可以讓您在不干擾本地Python安裝或其他問題的情況下爲用戶提供可執行文件。 – 2009-12-21 20:58:33

+0

我無法使用py2exe,因爲它適用於可以在Python中插入腳本/插件的服務器,所以我需要完整的python發行版... – mamcx 2009-12-21 21:09:19

+0

@mamcx,這絕不應該是一個真正的問題。即使一個應用程序是py2exe,它仍然能夠從文件系統導入並使用像execfile()這樣的函數。也許單獨提出一個問題會給你一個簡單的解決方案,並使這個特定的問題沒有意義。 – 2009-12-21 21:28:30

回答

2

我沒有用它,超越一些初步的研究,但ActiveState的ActivePython一般不你想要什麼,如果你正在尋找商業預製解決方案。

我已經開發了包含自己的捆綁Python的軟件,並且從來沒有任何衝突問題。在我們的例子中,它與軟件的其餘部分一起安裝,而不是C:\ Python26,它僅供軟件使用,而不是作爲系統上任何現有Python的替代品。一個預編譯爲.pyo的stdlib的完整Python僅需要約10-20MB的空間,具體取決於您包含哪些模塊。所以我不擔心可能的冗餘。

由於您確切知道您擁有的所有第三方庫的哪些版本,因此它還使您的生活更輕鬆地擁有自己的副本;您不必擔心用戶升級會破壞應用程序的內容。反說法是,出於安全原因,一些用戶可能需要最新版本的庫。但根據我的經驗,這些用戶的數量非常少,對他們來說,這只是一小部分工作。

最後,我認爲你有理由要完整的Python安裝。以防萬一您只想分發單個應用的方式,請參閱py2exe

+0

非法重新部署ActivePython。是必要的支付,並且非常昂貴... – mamcx 2009-12-21 21:08:33

+1

是的,它是商業的,所以你有成本的缺點,以及可能的支持優勢。你沒有提到任何成本要求,所以我把它作爲一個選項。 – DNS 2009-12-21 21:27:13