打包应用程序时架构如何工作

问题描述 投票:0回答:7

您好,我是打包应用程序的新手。我正在运行一个命令来打包我在 RHEL 上创建的简单 sh 应用程序。我不明白为什么建筑说 noarch,尽管据我所知。打包是特定于所使用的体系结构和操作系统的。 谁能解释一下 noarch 是什么意思?

rpm -qi hello
Name        : hello
Version     : 0.0.1
Release     : 1
Architecture: noarch
Install Date: Mon 09 Nov 2020 01:29:51 AM CET
Group       : Unspecified
Size        : 294
License     : GPL
Signature   : (none)
Source RPM  : hello-0.0.1-1.el8.src.rpm
Build Date  : Mon 09 Nov 2020 01:08:14 AM CET
Build Host  : slimmerAI
Summary     : A simple hello world script
Description : A demo RPM build
rhel apache-age
7个回答
1
投票

“Noarch”架构名称意味着当前包未绑定/绑定到任何特定架构,这意味着它可以在任何支持 RPM 打包的系统上使用和安装,无论 CPU 架构是什么。


0
投票

Architecture: noarch
仅仅意味着 RPM 包中没有特定于体系结构的文件/二进制文件。因此,这样的软件包可以安装在任何可以使用 rpm 软件包管理器的硬件上。这是参考链接


0
投票

实际上,noarch意味着没有架构。当包的体系结构字段设置为 noarch 时,意味着该包不是特定于体系结构的。它可以在任何架构上运行。

就像您的情况一样,包hello,即摘要中描述的简单的 hello world 脚本,可以安装在任何系统上。它不需要特定的架构来运行。


0
投票

Noarch 架构表示该包不绑定到任何特定的硬件架构,这意味着它可以在任何 CPU 架构上运行,这意味着支持 RPM 包管理器。


0
投票

架构:noarch

这意味着这个包不限于任何特定/特定的架构。

此软件包可以安装在任何支持 RPM 软件包管理器的系统上。


0
投票

基本上,当您构建 RPM 包时,您可能会遇到某些文件是特定于体系结构或特定于操作系统的文件,而其他文件则不是的情况。在这些情况下,您可以创建 RMP 包,其中一些标记为“noarch”用于独立于体系结构的文件,而另一些则标记为它们所针对的特定体系结构,例如 x86_64。

在您的情况下,“noarch”表示软件包文件包含不依赖于体系结构的文件,并且可以安装在任何系统上,无论其体系结构如何。


-1
投票

noarch”架构名称意味着当前包不依赖于任何特定架构。这意味着该软件包不包含特定于体系结构的文件/二进制文件,并且可以安装在支持 RPM 软件包管理器的任何系统上,无论 CPU 体系结构如何。

© www.soinside.com 2019 - 2024. All rights reserved.