Pypi 包:我的可执行文件在哪里?
Pypi package : where is my executable?
(Archlinux/Python3.5)
我正在使用以下命令处理 a small Python3 project made up of only one Python file . With the help of tutorials like this one, I've created a Pypi package:
$ python setup.py sdist bdist_wheel register -r pypi (ok, no error msg)
$ python setup.py sdist bdist_wheel upload -r pypi (ok, no error msg)
...我想我必须写:
$ sudo pip install katal (ok, no error msg)
然后,例如:
$ katal --version
...为了使用它。
但是最后一个命令失败了:没有katal
或Katal
命令;如果我看一下 /usr/lib/Python3.5/site-packages/
,我只会看到以下文件(没有安装 .py 文件!):
/usr/lib/python3.5/site-packages/Katal-0.0.9.dist-info/DESCRIPTION.rst
/usr/lib/python3.5/site-packages/Katal-0.0.9.dist-info/METADATA
/usr/lib/python3.5/site-packages/Katal-0.0.9.dist-info/RECORD
/usr/lib/python3.5/site-packages/Katal-0.0.9.dist-info/WHEEL
/usr/lib/python3.5/site-packages/Katal-0.0.9.dist-info/metadata.json
/usr/lib/python3.5/site-packages/Katal-0.0.9.dist-info/top_level.txt
我显然忘记了什么...但是什么?我的 setup.py clearly defines 我的项目的唯一包在哪里(=除了 test
目录之外的所有内容,包括 katal
子目录):
packages=find_packages(exclude=['tests*']),
如有任何帮助,我们将不胜感激!
在您的setup.py中,有一段被注释掉了:
...
##entry_points={
## 'console_scripts': [
## 'sample=sample:main',
## ],
##
...
这是我通常定义可执行文件的地方,请参阅 this tutorial。您还可以为设置定义一个 scripts
参数,它的工作方式略有不同(并且可能会更好地匹配您的用例),但这在我链接到的教程中有所介绍。
(Archlinux/Python3.5)
我正在使用以下命令处理 a small Python3 project made up of only one Python file . With the help of tutorials like this one, I've created a Pypi package:
$ python setup.py sdist bdist_wheel register -r pypi (ok, no error msg)
$ python setup.py sdist bdist_wheel upload -r pypi (ok, no error msg)
...我想我必须写:
$ sudo pip install katal (ok, no error msg)
然后,例如:
$ katal --version
...为了使用它。
但是最后一个命令失败了:没有katal
或Katal
命令;如果我看一下 /usr/lib/Python3.5/site-packages/
,我只会看到以下文件(没有安装 .py 文件!):
/usr/lib/python3.5/site-packages/Katal-0.0.9.dist-info/DESCRIPTION.rst
/usr/lib/python3.5/site-packages/Katal-0.0.9.dist-info/METADATA
/usr/lib/python3.5/site-packages/Katal-0.0.9.dist-info/RECORD
/usr/lib/python3.5/site-packages/Katal-0.0.9.dist-info/WHEEL
/usr/lib/python3.5/site-packages/Katal-0.0.9.dist-info/metadata.json
/usr/lib/python3.5/site-packages/Katal-0.0.9.dist-info/top_level.txt
我显然忘记了什么...但是什么?我的 setup.py clearly defines 我的项目的唯一包在哪里(=除了 test
目录之外的所有内容,包括 katal
子目录):
packages=find_packages(exclude=['tests*']),
如有任何帮助,我们将不胜感激!
在您的setup.py中,有一段被注释掉了:
...
##entry_points={
## 'console_scripts': [
## 'sample=sample:main',
## ],
##
...
这是我通常定义可执行文件的地方,请参阅 this tutorial。您还可以为设置定义一个 scripts
参数,它的工作方式略有不同(并且可能会更好地匹配您的用例),但这在我链接到的教程中有所介绍。