【发布时间】:2018-05-28 01:12:11
【问题描述】:
我把我的colorize.py 包放到PyPi 上,发现了以下奇怪的行为。如果我从project page 下载colorize.py-0.9.1.tar.gz,并检查colorize.py 的第一行,我会得到以下输出:
$ wget https://files.pythonhosted.org/packages/91/d8/805853c14a8ccf67ddfe2cf41b634395ef69a1138a0dade303bf4b7c9b45/colorize.py-0.9.1.tar.gz
$ tar xvfz colorize.py-0.9.1.tar.gz
$ head -n1 colorize.py-0.9.1/colorize.py
#!/usr/bin/env python
但是,在我的Ubuntu 16.04.4 LTS 笔记本电脑上,如果我使用pip 安装,第一行已被替换:
$ pip install colorize.py
$ head -n1 $(which colorize.py)
#!/usr/bin/python
另一方面,我的朋友在她的 OS X 笔记本电脑上运行相同的安装命令,并获得了原始解释器行。
这是怎么回事,是否可以强制pip 在执行安装时不更改解释器行?
【问题讨论】:
-
setup.py 是否使用控制台入口点?如果是这样,则在安装时生成命令行脚本。
-
@JonathonReinhart,我不确定如何确定;我没有做任何具体的事情来让它使用控制台入口点,但我也不确定它是否是自动完成的。它只是从
setuptools调用setup:github.com/hq6/Colorize/blob/master/setup.py