Building from Source Code - Introduction

With all the great package management systems out there, why on Earth would I want to build a package from its source code?

Lazy Distributions

Well, a prime example of the reasoning behind this is Debian Linux. Debian is the most thoroughly tested distribution out there. It almost ALWAYS a revision behind the other distros. But when you install a Debian Linux system you have a rock solid system that upgrades very easily. So, if you want to build a package that is newer than any of the available Debian packages, guess what? You'll have to build it from source code!

Architecture incompatibilities

Another good reason is for architectures that don't have all the desired packages ported to a particular architecture (Linux for the PowerPC, for example).

Security reasons

One final thought is on security. Who built the package you are about to install on your system? Did they throw a back door into the code before packaging it up for distribution? Did they include all the options you desire for the software (i.e. OpenSSL support)?
Are you a paranoid security guru!? Well, if you are, then the only way to ensure that your packages are pristine is to audit the code and build it yourself. Most people will not audit the code. This is a timely and tedious procedure. But building the software is quite straightforward and affords the system administrator (you) the ability to build more customized versions of the software.