2014-08-29 82 views
3

對於我的django項目,我創建了一個很好的工作流程。使用buildout來「引導」一個項目和我基​​於版本開發的應用程序。其餘的是從pypi安裝的軟件包和應用程序。我在Ubuntu上工作,我的服務器在Ubuntu上。這像一個魅力。Django在windows上構建

現在有一個新的開發人員在Windows上工作。他有很多麻煩,讓我使用它的方式工作。

是否有特殊的方式或其他方式我應該使用buildout來設置它的Windows?

的安裝方便的使用似乎是問題....

Windows用戶: 我已經安裝numpy的,並與安裝matplotlib的Windows(64位)。但buildout仍然試圖編譯matplotlib。編譯不起作用。我嘗試了GCC作爲編譯器。我能否防止編譯和使用已安裝的軟件包?

回答

1

如果某事對numpy或matplotlib有依賴性,buildout會嘗試安裝它,句點。所以你有兩個基本的解決方案:

  • 不明確說你想要numpy或matplotlib。取決於你和你的同事已經在全球安裝它。擴建將不會嘗試安裝什麼不知道:-)

  • 使用syseggrecipe明確地告訴擴建尋找一個包在全局安裝:

    [buildout] 
    parts = 
        sysegg 
        django 
        .... 
    
    [sysegg] 
    recipe = syseggrecipe 
    eggs = 
        matplotlib 
        numpy 
    
    [django] 
    recipe = djangorecipe 
    .... 
    

    確保sysegg部分在您的零件清單開始時非常正確。 syseggrecipe在您的構建的develop-eggs/目錄中放置一個指向您全局安裝版本的鏈接,從而告訴構建包的存在。

    警告:我不確定syseggrecipe是否在Windows上工作100%,因爲它使用符號鏈接。請求修復它(如果事實證明是個問題)是值得歡迎的。

+2

構建2還可讓您使用每個平臺的部分;你可以保留一個單獨的窗口部分。請參閱https://pypi.python.org/pypi/zc.buildout/2.2.1#conditional-sections – 2014-08-29 17:53:55

+0

不錯的提示(包括Reinout和Martijn),不幸的是...對於這個問題.... windows用戶決定在vbox中使用Ubuntu的...所以我不能再嘗試/調試這個問題了...我會保持這個問題打開(對不起),直到我有時間嘗試以上所有...... – 2014-09-02 21:56:00

+0

沒問題。 Virtualbox + ubuntu也是一個很好的解決方案。 – 2014-09-03 08:17:14