为什么没有任何 Linux 发行版具有通用的平台来安装软件?

为什么没有任何 Linux 发行版具有通用的平台来安装软件?

我是 Linux 新手。我已经使用 Kubuntu 一段时间了。任何在 Windows 中构建的软件都有一个可执行文件/安装文件。如果你想下载任何应用程序。你只需访问该应用程序的官方网站,下载相关软件包,然后单击 .exe/setup 文件即可打开软件包安装程序,你只需单击下一步、下一步并安装即可。应用程序将安装,但在 Linux 发行版中并非如此,你必须打开终端并安装软件包,此外你还需要安装一些其他软件包、补丁等。并且没有像 Windows 中那样易于查找和安装的单个可执行文件。要安装任何软件,通常必须转到 github 复制软件包地址并按照许多步骤安装软件。所以我的问题是为什么没有任何 Linux 发行版像 Windows 中那样构建通用软件安装程序?如果没有,将来是否有可能构建一个类似于 .exe/setup 文件的东西,你可以轻松下载和安装而无需经过许多步骤。

例如,如果你想安装 tplink 无线适配器软件,对于 Windows 来说,这很容易。有一个可执行文件,双击完成。但在 Linux 中,只会看到这个如何使 TP-Link TL-WN823N V3 无线适配器工作?. 你就会明白我在说什么。

答案1

你忽略了 Linux 发行版最重要的方面:它是一个分配多个包裹。

Linux 发行版保证该发行版中的所有软件包都可以协同工作。Windows 的情况完全不是这样:例如,微软、Adobe 和苹果都不保证 PhotoShop 和 iTunes 可以很好地协同工作。(当然,这是一个愚蠢的例子。)在我使用 Windows 的近 30 年时间里,我观察到很多安装一个应用程序会破坏另一个应用程序的情况。

而在 Linux 发行版中,分销商保证发行版中的所有软件包都能很好地协同运行,例如,两个来自不同开发商的软件包,他们甚至不知道对方的存在。

另一个区别是 Linux 发行版支持的平台比 Windows 多得多。目前,(消费者)Windows 仅支持两个平台:AMD64 和 ARM64。如果你在 ARM64 上使用 Windows,你会发现

您只需访问他们的官方网站,下载相关软件包,然后单击.exe 文件就会打开软件包安装程序,只需单击“下一步”并安装即可。

经常不是工作,因为没有ARM64 版本。

而 Linux 发行版将保证发行版中的所有软件包均可用于所有平台。

仅供比较,Windows 当前支持 ARM64 和 AMD64,Linux 当前支持 ARM 32 位(多种变体)、ARM64、Alpha、Arc、IA-64(Itanium)、AMD64、x86、x32(带有 32 位指针的 AMD64)、ARC、C-SKY、Hitachi/Renesas H8、Motorola m680x0、Qualcomm Hexagon、Microblaze、MIPS(32 位和 64 位)、OpenRISC、HP PA-RISC、PowerPC(32 位和 64 位)、RISC-V、IBM S/390(31 位)和 S/390x(64 位)、Super-H、SPARC、Xtensa、Andes NDS32 和 Altera NIOS。

当然,现在并非所有 Linux 发行版都支持所有这些架构,但例如 Ubuntu 支持 AMD64、ARM64、POWER 和 S/390x,这是 Windows 的两倍。其他 Linux 发行版支持更多:Debian 支持 AMD64、ARM64、armel(用于较旧 ARM CPU 的 ARM 32 位嵌入式 ABI)、armhf(用于较新 ARM CPU 的 ARM 32 位硬件浮点支持)、x86、MIPS(32 位和 64 位)、PowerPC 64 位、S/390x。Gentoo 支持 AMD64、Alpha、ARM(32 位和 64 位)、HP PA-RISC、IA-64、m68k、PowerPC(32 位和 64 位)、RISC-V、SPARC、x86 和 S/390(x)。

例如,如果您想安装 tplink 无线适配器软件,对于 Windows 来说这很容易。有一个可执行文件,双击完成。但在 Linux 中,只需查看如何在 Ubuntu 14.04 上安装 TP-Link TL-WN722N 驱动程序?。你就会明白我在说什么。

这是一个非常特殊的情况。

首先,请注意问题是七岁以上。如果你阅读问题下的评论,你会看到这些都不是不再需要。驱动程序随所有当前 Linux 发行版一起提供,设备开箱即可使用。

这看起来如此复杂的唯一原因是因为提问的用户想要使用全新设备老的版本的操作系统,并尝试从较新版本的 Linux 中提取驱动程序并使其在较旧版本的 Linux 上运行。

如果他们只是等待操作系统的下一个版本发布并进行更新,那么他们就不需要做任何事情。

但更笼统地回答你的问题:这是硬件供应商的问题!如果你想知道为什么 TP-Link 为其 Windows 驱动程序提供安装程序,但不为其 Ubuntu 驱动程序提供安装程序,那么你必须问 TP-Link。其他任何软件都有一些:当然可能的按照你的要求去做,但供应商实际上必须这么做。

如果某个供应商选择发布适用于 Windows 的安装程序,但不发布适用于 Linux 的安装程序,则这是那个特定的供应商,而不是 Linux 社区。

相关内容