2011-05-12 88 views
68

我有一個python程序我想要安裝到我的virtualenv - 這是一個zip包,我需要解壓縮,然後運行setup.py程序 - 但我的問題是更多關於如何獲得這些解壓縮的文件放入我的virtualenv中,以便將軟件包安裝到virtualenv的site-packages文件夾中?Python - 手動安裝包使用virtualenv

我也可以在我的virtualenv中使用pip install <package name>進行安裝,但由於某些原因,PIP下載的軟件包已過期。

所以 - 有人可以告訴我一些手動安裝軟件包的簡單步驟嗎?

到目前爲止,我必須加載了VIRTUALENV基本命令:

-bash-3.2$ source ~/.bashrc 
-bash-3.2$ workon test 
(test)-bash-3.2$ //Now I'm working on my virtualenv, but where do I go after this?? 

所以 - 這很重要,我解壓Python包/程序 - 或者我應該到的virtualenv前先登錄解壓?在加載virtualenv後,我在'workon test'命令中使用它,將安裝的任何python軟件包,無論我找到它的目錄,都將它自己安裝到適當的virtualenv的site-packages文件夾中?

選項1是將python程序解壓到/ home/username/tmp中 - 然後登錄到我的virtualenv中,導航到該文件夾​​並運行setup.py程序 - 假設virtualenv將所有相關文件轉移到它自己的網站包文件夾。

或方案2是直接解壓縮文件到站點包,並從那裏運行它(在登錄到的virtualenv後)等

謝謝你幫助一個Python clutz這個!

回答

98

我通常會將程序解壓縮到一個臨時文件夾,然後從該文件夾使用virtualenv python實例的直接路徑運行setup.py。例如,如果你的virtualenv是在/ home /用戶名/ virtualpy,使用這個(從你的臨時文件夾)

/home/username/virtualpy/bin/python setup.py install 

這應該安裝到你的virtualenv站點包文件夾。

+2

所以,真正的導入操作是使用python的版本運行python(2.6)安裝在virtualenv ...很好!謝謝Dwelch。 – Jamison

+0

確保您從臨時文件夾運行它; setup.py可能會期望它是當前文件夾。 – Seth

9

很好,當你切換到虛擬環境。你應該鍵入

which python

如果返回您的虛擬環境中存在,那麼它的好就可以直接運行此命令的路徑。

$ python setup.py build 
$ python setup.py install 

,但如果它賦予這是不是你的virtualenv's路徑全球一級路,那麼你應該嘗試使用

$ ~/.virtualenv/python-env/bin/python setup.py build 
$ ~/.virtualenv/python-env/bin/python setup.py install