Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux Pypi包:我的可执行文件在哪里?_Linux_Pypi_Python 3.5 - Fatal编程技术网

Linux Pypi包:我的可执行文件在哪里?

Linux Pypi包:我的可执行文件在哪里?,linux,pypi,python-3.5,Linux,Pypi,Python 3.5,(Archlinux/Python3.5) 我正在做一个由…组成的。在教程(如)的帮助下,我使用以下命令创建了: $ 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

(Archlinux/Python3.5)

我正在做一个由…组成的。在教程(如)的帮助下,我使用以下命令创建了:

$ 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文件!):

我显然忘了什么。。。但是什么呢?我清楚地知道我的项目的唯一包在哪里(=除了
test
目录,包括
katal
子目录以外的所有内容):


任何帮助都将不胜感激

在setup.py中,有一个部分被注释掉了:

...
##entry_points={
##    'console_scripts': [
##        'sample=sample:main',
##    ],
##
...

这是我通常定义可执行文件的地方,请参阅。您还可以为设置定义一个
scripts
参数,该参数的工作方式稍有不同(可能会更好地匹配您的用例),但我链接到的教程中介绍了这一点。

谢谢您的提示!我尝试使用“控制台脚本”:“katal=katal.katal”,]但是,除了setup.py之外,包中没有.py文件;具体来说,katal/子目录没有出现在要下载的tar ball中。脚本=[os.path.join(“.”,“katal”,“katal.py”)]也有同样的问题,是的,这很奇怪,我正在研究这个问题。setuptools似乎无法找到katal包,因此传递到
脚本
入口点[“控制台脚本”]
的任何内容都将被忽略。真正的问题是,我看不出你如何使用
find_packages
这应该是可行的……但我对此很感兴趣,所以我正在努力。当我找到某个内容时,将更新我的答案。好的,因此我可以通过添加
脚本=['katal/katal.py']
使其正常工作。我的猜测是pypi上的包已经过时了,您需要恢复,添加scripts参数,然后再次上传。然后您应该能够从命令行调用
katal.py
。我会避免
os.path.join(“.”,…)
,因为这将在安装/构建时执行,而不是在安装后相对于目录执行。你说得对!我为洪水道歉。谢谢你提供的所有细节。我更新了我的OP。
 packages=find_packages(exclude=['tests*']),
...
##entry_points={
##    'console_scripts': [
##        'sample=sample:main',
##    ],
##
...