Why are there no -dev packages in Arch Linux?

18,150

Solution 1

The -dev packages usually contain header-files, examples, documentation and such, which are not needed to just running the program (or use a library as a dependency). They are left out to save space.

ArchLinux usually just ships these files with the package itself. This costs a bit more disk space for the installation but reduces the number packages you have to manage.

Solution 2

If you want to edit the source of standard packages and compile them yourself, you should use the ABS (Arch Build System). Quoted from the Arch Linux Wiki:

The Arch Build System, ABS for short, is a ports-like system for building and packaging software from source code. While pacman is the specialized Arch tool for binary package management (including packages built with the ABS), ABS is a collection of tools for compiling source into installable .pkg.tar.gz/.pkg.tar.xz packages.

This is the recommended method when using Arch Linux.

Share:
18,150

Related videos on Youtube

Sebastian
Author by

Sebastian

Updated on September 18, 2022

Comments

  • Sebastian
    Sebastian over 1 year

    I understand that source based distributions like Gentoo or Slackware do not need *-dev versions of programs. They include the source code as well as header files for compiling everything locally.

    But I never saw *-dev packages in Arch Linux, although it is package based. I ran across lots of *-dev packages in other distributions.

  • Matthew Marshall
    Matthew Marshall over 12 years
    You're confusing dev packages with src packages. src packages let you rebuild the package itself. dev packages let you build something that depends on the package.
  • Sebastian
    Sebastian over 12 years
    Hello thanks for your answer. I think you are right, because I noticed on Arch Linux I can compile packages right away (no need to install -dev packages). Could you include one reference?
  • Wieland
    Wieland over 12 years
    The most important reference if probably The Arch Way and the Simplicity principle - making -dev packages actually means building the package and taking away the include files. Archlinux packages however include the package as it was built (for example by invoking make) without touching it afterwards. There are exceptions to this rule but I can't think of one relevant to this question.
  • Jason Axelson
    Jason Axelson over 12 years
    @MatthewMarshall You're correct. Although at least the ABS is related to the question.