Python 使用 --user 标志安装时找不到入口点命令行脚本
Python entry point commandline script not found when installing with --user flag
我最近写了一个带有命令行工具的包。 setup.py 看起来像这样
from setuptools import setup
setup(...
entry_points = {
'console_scripts': [
'cmdname = modulename.binary:main',
],
},
...)
当我通过
在没有 --user 标志的情况下安装它时一切正常
$ sudo python setup.py install
$ cmdname
Yes, I'm here! Give me a command!
但是,在没有 root 访问权限的情况下安装它会
$ python setup.py install --user
$ cmdname
-bash: cmdname: command not found
我想应该有一个用户脚本链接到的目录应该导出到 PATH?无论如何,我怎样才能实现 setuptools 链接到入口点?还是不可能?
二进制文件已安装到 ~/.local/bin/
。因此,将 export PATH=~/.local/bin:$PATH
添加到 ~/.bash_profile
和
$ source ~/.bash_profile
解决了问题。
我最近写了一个带有命令行工具的包。 setup.py 看起来像这样
from setuptools import setup
setup(...
entry_points = {
'console_scripts': [
'cmdname = modulename.binary:main',
],
},
...)
当我通过
在没有 --user 标志的情况下安装它时一切正常$ sudo python setup.py install
$ cmdname
Yes, I'm here! Give me a command!
但是,在没有 root 访问权限的情况下安装它会
$ python setup.py install --user
$ cmdname
-bash: cmdname: command not found
我想应该有一个用户脚本链接到的目录应该导出到 PATH?无论如何,我怎样才能实现 setuptools 链接到入口点?还是不可能?
二进制文件已安装到 ~/.local/bin/
。因此,将 export PATH=~/.local/bin:$PATH
添加到 ~/.bash_profile
和
$ source ~/.bash_profile
解决了问题。