2014-11-08 36 views
7

我正在與蟒蛇WHL包以下問題:皮普,車輪和console_scripts

我有我的setup.py定義的單一入口點包。 當我運行pip install .時,它會正確安裝包入口點包裝。 當我運行python setup.py bdist_wheel後跟pip install thing.whl時,它只安裝軟件包,而不是入口點。

如何從創建的車輪包中正確安裝入口點?

PS:當我解壓縮砂輪包時,我找到了帶有預期條目的「entrypoints.txt」。它只是沒有安裝在環境箱中。

+0

我不確定我是否遇到問題。 pip安裝方法不起作用? – Eric 2014-11-08 06:13:07

+0

我試着改進一下措辭。 'pip install .'可以工作,但這需要源代碼分發。使用滾輪打包並安裝軟件包不起作用,因爲入口點未安裝在bin中。 – 2014-11-08 06:23:44

回答

6

輪子用於包括在包中預先產生的控制檯腳本包裝,但這是次優的,並且文件被刪除。安裝程序應該生成這些包裝腳本,但pip尚未更新後續,請參閱issue 1067

直到pull request 1251是發行版的一部分,你必須使用一個單獨的命令來安裝控制檯腳本:

python -m wheel install-scripts thing.whl 

Setuptools scripts handling輪子文檔。

此請求在本月初(2014年11月)合併,並將成爲upcoming 6.0 release的一部分。您也可以使用pip將其自身升級到GitHub的開發版本:

pip install git+https://github.com/pypa/pip.git 
+0

如果'pkg_resources.DistributionNotFound'被引發,你可能不得不運行'python -m wheel install ',然後運行'python -m wheel install-scripts pkg',因爲這個包可能需要一些東西上班。 – metatoaster 2016-10-08 04:10:58