簡體   English   中英

Python setup.py 開發與安裝

[英]Python setup.py develop vs install

setup.py developinstall中的兩個選項讓我很困惑。 根據這個站點,使用develop創建一個指向 site-packages 目錄的特殊鏈接。

人們建議我使用python setup.py install進行全新安裝,並在對安裝文件進行任何更改后使用python setup.py develop

誰能解釋一下這些命令的用法?

python setup.py install用於安裝(通常是第三方)您不會自己開發/修改/調試的包。

對於你自己的東西,你想首先安裝你的包,然后能夠經常編輯代碼不必每次都重新安裝包——這正是python setup.py develop所做的:它安裝包(通常只是一個源文件夾),這樣您就可以在將代碼安裝到(虛擬)環境后方便地編輯代碼,並使更改立即生效。

請注意,強烈建議使用pip install . (常規安裝)和pip install -e . (developer install) 來安裝包,因為直接調用setup.py會對許多依賴項做錯誤的事情,例如拉取預發布和不兼容的包版本,或者使用pip使包難以卸載。

文檔中 develop不會安裝包,但會在部署目錄中創建一個.egg-link回到項目源代碼目錄。

所以這就像安裝,但不是復制到site-packages它添加了一個符號鏈接( .egg-link充當多平台符號鏈接)。

這樣您就可以編輯源代碼並直接查看更改,不必每次進行一點更改時都重新安裝。 當您是該項目的開發人員時,這很有用,因此名稱為develop 如果你只是安裝別人的包,你應該使用install

人們在使用develop方法時可能會發現有用的另一件事是--user選項可以在沒有 sudo 的情況下進行安裝。 例如:

python setup.py develop --user

而不是

sudo python setup.py develop

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM