如何在Linux上安装系统范围的Python包?

时间:2017-12-18 13:26:30

标签: python linux ubuntu pip python-module

我经常遇到一些python包(我使用pip安装),可以像终端上的独立二进制文件一样访问它。不只是一个python模块。

我想了解创建可以由$pip install mypackage(或$python setup.py install)安装的软件包的标准方法  也可以从任何地方获得$mypackage。我知道我可以通过$python -m mypackage访问__main__.py文件。但我希望我的包能够像存储在/ usr / bin中的任何二进制文件一样运行。

我不是在寻找任何别名/路径变量hack,也不想创建.deb / .rpm的东西。

编辑:我从评论框获得了帮助。最终,setuptools已经有了选项。 Setuptools Documention

setup()函数的entry_point参数可以解决这个问题。

setup(
    # other arguments here...
    entry_points={
        'console_scripts': [
            'foo = my_package.some_module:main_func',
            'bar = other_module:some_func',
        ],
        'gui_scripts': [
            'baz = my_package_gui:start_func',
        ]
    }

这里entry_point采用一个字典,其值包含一个列表。创建了两个名为foobar的CLI脚本,分别包含来自main_funcsome_func的函数my_package.some_moduleother_module。也可以通过此方法创建Gui脚本。

0 个答案:

没有答案