2011-08-21 72 views
7

我想開始一個新的python GUI應用程序,我決定使用wxPython作爲GUI,因爲我想要一個多平臺。如何安裝wxPython使用virtualenv

問題是我想使用virtualenv(使用virtualenvwrapper)來隔離環境並能夠在其他機器上重現它,但我無法安裝wxPython。

我有它通過安裝在我的Ubuntu機器易於得到,但是這還不夠

...我已經尋找解決辦法的網頁,我發現...

  • 本頁面http://batok.github.com/virtualenvwxp/在這裏解釋了一種破解virtualenv環境以使用wxPython的本地安裝的方法。不是最好的解決方案,但它是一個很好的解決方法。問題是,這是解釋爲Mac,我不能讓它在我的Ubuntu的工作。

  • 也發現此頁面Installing wxPython in virtualenv under Linux有人提出類似的問題。我試圖以沒有成功的方式構建wxPython。

任何幫助,將不勝感激。

最後,我選擇了wxPython,因爲它是多平臺的,我可以在沒有許可問題的情況下使用它,但是因爲我還沒有開始,所以如果有另一個更容易安裝的框架,我可以改變主意。

在此先感謝

20110925:很抱歉的延遲,感謝您的答案。 我只是試圖使用buildout和這裏給出的鏈接來安裝wxpython,但我仍然有同樣的問題。看起來好像我需要libgtk2.0-dev包來編譯wxpython ...

那麼有什麼方法可以將本程序包本地安裝到buildout環境?

再次感謝。

+0

當你嘗試構建wxPython時,什麼是構建錯誤? –

+0

似乎gtk不存在...檢查GTK + - 版本> = 2.0.0 ...否 ***無法運行GTK +測試程序,檢查原因... ***測試程序未能編譯或鏈接。請參閱文件config.log,瞭解發生的 ***確切錯誤。 – thamurath

回答

3

最後我無法解決這個問題。

我想使用buildout和/或virtualenv創建一個具有所有需求的可重複使用的Python環境,這樣我就可以在任何只有virtualenv,python和C++編譯器的linux系統中工作。

看來唯一的方法就是使用構建cmmi食譜來下載和構建wxpython及其所有依賴項。這是一種非常痛苦的方式,現在我沒有時間了。

我已決定使用一種解決方法:大多數時間我將在我的ubuntu筆記本電腦上工作,所以我從存儲庫安裝了wxpython並使用wx.pth文件使其可用於虛擬環境。

這不是一個好的解決方案,但似乎是迄今爲止最好的...所以如果有人知道任何更好的解決方案,請讓我知道。

當我的Python項目更加成熟,我會再次轉向這個問題,我可能會嘗試艱辛的道路......

感謝您的答案和評論。

+4

如果對其他人不明顯,您的wx.pth文件應包含本地安裝的wx路徑:'echo /usr/lib/python2.6/dist- packages/wx-2.8-gtk2-unicode> $ VIRTUAL_ENV/lib/python2.6/site-packages/wx.pth' – mgalgs

+1

我最近來到一個有趣的項目,可以在這裏適用http://www.vagrantup.com/ – thamurath

+0

我知道發表感謝並不酷,但是......感謝mgalgs ..這是很有幫助的! _最後,感謝您的小評論,我得到了這個工作! (是的,我upvoted!) – GreenAsJade

1

Buildout允許您安裝不同的parts,其recipe代碼確定如何構建該零件。有配置/製作/製作安裝(CMMI)構建東西的配方cmmi。你可以使用它在本地構建wxPython到build,然後創建一個包含wxPython和你自己的蛋的路徑的python interpreter

有關詳細信息,請參見blog postthis answer

請記住,zc.recipe.egg也會在build的bin目錄中安裝任何setuptools /分發console_scripts。來自VCS的也參見mr.developer,並在相同的構建中對它們進行操作。

+0

buildout是我前段時間看到的另一個工具,但它似乎比pip更復雜......我想我將不得不與這些食譜戰鬥......感謝評論 – thamurath

+0

感謝您的回答。按照您發佈的博客條目中的說明,我最終嘗試了一次嘗試。 wxpython正確下載,但問題仍然存在... – thamurath

2

我結束了使用的解決辦法是安裝Python我的主要系統:

然後進行從WX符號鏈接在我的系統蟒蛇到我的虛擬環境:

ln -s /usr/lib/python2.7/dist-packages/wxversion.py <virtual_env_path>/lib/python2.7/site-packages/wxversion.py 

在哪裏在我的情況,以名爲「FiberSIM軟件」,例如虛擬環境的路徑是:

/home/adam/anaconda/envs/fibersim 

然後import wx工作

得到這個從:http://qopml.org/wp-content/uploads/2013/01/README.txt