Red Hat Training

A Red Hat training course is available for RHEL 8

41.2. 更改自定义软件包中的 /usr/bin/python3 解释器指令

默认情况下,/usr/bin/python3 格式的解释器指令被替换为指向 platform-python 软件包中的 Python 解释器指令,该指令用于 Red Hat Enterprise Linux 的系统工具。您可以更改自定义软件包中的 /usr/bin/python3 解释器指令,以指向从 AppStream 存储库安装的 Python 的特定版本。

流程

  • 要为特定版本的 Python 构建软件包,请将相应 python 软件包的 python*-rpm-macros 子软件包添加到 SPEC 文件的 BuildRequires 部分。例如,对于 Python 3.6,请包含以下行:

    BuildRequires:  python36-rpm-macros

    因此,自定义软件包中的 /usr/bin/python3 解释器指令会自动转换为 /usr/bin/python3.6

注意

要防止 BRP 脚本检查和修改解释器指令,请使用以下 RPM 指令:

%undefine __brp_mangle_shebangs