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.

2 Answers 2


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.

  • 1
    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?
    – Sebastian
    Jan 13, 2012 at 9:46
  • 3
    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.
    – Wieland
    Jan 13, 2012 at 19:02

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.

  • 2
    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. Jan 13, 2012 at 3:57
  • @MatthewMarshall You're correct. Although at least the ABS is related to the question. Jan 13, 2012 at 20:02

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.