为什么 Arch Linux 中没有 -dev 包?

Seb*_*ian 34 compiling source arch-linux package-management

我知道像GentooSlackware这样的基于源代码的发行不需要*-dev程序版本。它们包括源代码以及用于在本地编译所有内容的头文件。

但是我从未*-devArch Linux 中看到过包,尽管它是基于包的。我*-dev在其他发行版中遇到了很多包。

ant*_*e-m 36

-dev 包通常包含头文件、示例、文档等,这些不是运行程序所需的(或使用库作为依赖项)。它们被排除在外以节省空间。

ArchLinux 通常只将这些文件与包本身一起提供。这会为安装花费更多的磁盘空间,但会减少您必须管理的软件包数量。

  • 最重要的参考可能是 [The Arch Way](https://wiki.archlinux.org/index.php/The_Arch_Way) 和 _Simplicity_ 原则 - 制作 `-dev` 包实际上意味着构建包并带走包含文件. 然而,Archlinux 包包括它被构建时的包(例如通过调用`make`),之后没有触及它。此规则有例外,但我想不出与此问题相关的例外。 (3认同)

Jas*_*son 5

如果你想编辑标准包的源代码并自己编译它们,你应该使用 ABS(Arch Build System)。引用自Arch Linux Wiki

Arch Build System,简称 ABS,是一个类似端口的系统,用于从源代码构建和打包软件。pacman 是用于二进制包管理(包括使用 ABS 构建的包)的专用 Arch 工具,而 ABS 是用于将源代码编译为可安装的 .pkg.tar.gz/.pkg.tar.xz 包的工具集合。

这是使用 Arch Linux 时推荐的方法。

  • 您将开发包与 src 包混淆了。src 包让你重建包本身。dev 包让你构建依赖于包的东西。 (2认同)