当前位置: 首页 > 知识库问答 >
问题:

python pip配置python可执行entry_points

施洛城
2023-03-14

我有一个包,我正在本地构建,以便在嵌入式环境中使用。

我试图自动生成控制台脚本,因此我在入口点内使用控制台脚本,如下所示:

setup(...,
    entry_points={
        'console_scripts': [
                'app=x.y:main'
        ]
    },
    # Below is added as the other tried methods failed.
    options={
        'build_scripts': {
            'executable': '/bin/custom_python',
        },
    }
)

我试图设置我entry_point中使用的python解释器,因为它不同于构建系统中的解释器。但是无论我尝试什么,它总是设置为本地翻译。

我尝试了几个选项,比如:

  1. 在设置程序的shebang头中设置解释器。py

但以上都不奏效。我在想是不是我错过了什么?

共有2个答案

吴刚毅
2023-03-14

试试看

python setup.py build --executable /bin/custom_python
python setup.py install  # or bdist_egg/bdist_wheel
姜明贤
2023-03-14

所以最后我设法做到了。

首先,我必须将以下内容添加到我的设置调用中,这在各种帖子中都有建议:

options={
    'build_scripts': {
        'executable': '/bin/custom_python',
    },
}

现在,我像往常一样构建并安装这个包。在本例中,我创建了一个控制盘并安装它:

python3 setup.py sdist bdist_wheel -d wheels 
pip3 install --no-deps -U --prefix $TARGET_INSTALL wheels/mypackage.whl

上面将使用本地python解释器来解释所创建的脚本

要修复此问题,我运行以下操作:

python3 setup.py install_scripts -d $TARGET_INSTALL/bin

将脚本替换为在“build_scripts”选项中传递的正确脚本。

但我仍然想知道,在安装带pip的车轮时,是否有办法直接获得正确的解释器?

 类似资料:
  • 我对编程非常陌生,而且对在UNIX环境中编程也非常陌生,所以请耐心听我说。 当我跑的时候 在我的Python 3控制台中,输出是 我可以导入我用pip3安装的任何库,没问题。当我在运行Python3内核的Jupyter笔记本中这样做时,输出是 我无法访问与pip3一起安装的库。我能做些什么来修复它,让Jupyter从正确的位置执行Python,这样我就可以使用我为Python3安装的任何东西和pi

  • 我有一个使用第三方jar的Spring启动应用程序。此jar需要一个xml配置文件,该文件必须由客户端在运行时(单独)提供,并且不能预打包。第三方lib使用以下顺序加载该文件(Is和空检查): 我不能更改lib加载文件的方式(例如使用Spring的资源加载),所以它必须在类路径上。因此,我似乎失去了像java-jarmy-spring-boot-app.jar一样执行它的可能性,因为选项阻止添加任

  • 我在主机上安装了Windows,在VirtualBox上安装了访客Ubuntu服务器。项目代码位于guest上,RubyMine位于host上。我已经配置了远程Ruby SDK并共享了项目文件夹。这很好。现在我需要配置Git。现在它运行本地(主机)可执行文件。我想通过SSH在guest上运行Git。它只允许设置本地路径(设置 知道如何集成远程Git可执行文件供RubyMine使用吗?

  • 我尝试使用maven命令行执行多个maven概要文件 但它只对Profile2执行,Profile1永远不会执行。通过命令行执行多个配置文件需要帮助。 另请注意,当我列出活动配置文件时,它会将两个配置文件显示为活动的。

  • Spring Boot执行器endpoint默认受基本http安全保护。 这个可以改成使用Spring Security吗?我已经成功地设置了Spring Security并使用它来保护我的其他页面。 我尝试了并在授权请求中添加了(注意,我使用了不同的url作为endpoint的根用户),但这没有帮助。我一直得到一个基本的http身份验证日志,它不是用户在AuthenticationManager

  • 问题内容: 为了创建可执行文件(Windows),我假设我们应该使用其中之一:Py2exe或PyInstaller。 它们之间有什么区别? 问题答案: Py2exe和PyInstaller都是包装器,但是我注意到了一些区别, Py2exe与python2.4 +兼容,包括python3.0和3.1,而PyInstaller当前与python 2.7和3.3–3.5兼容 据我所知,Py2exe不支持