Most nonproprietary third-party Unix software packages come as source code that the administrator can compile and install. One reason for this tradition is that Unix has so many different flavors and architectures that it would be difficult to distribute binaries for all possible platform combinations. Widespread source code distribution throughout the Unix community encouraged users to contribute bug fixes and new features to the software, and eventually this gave rise to the term "open source."
You can get everything you see on a Linux system comes as source code — this means everything from the kernel and C library to the Web browsers. This means it is possible to update and augment your entire system by (re-)installing parts of your system from the source code. However, you probably shouldn't update your machine by installing everything from source code unless you really enjoy the process. Linux distributions provide easier means to update core parts of the system (such as the programs in /bin).
Don't expect your distribution to provide everything for you. When you install binary packages from a distribution, you have no control over configuration options, including where the software goes. Some packages are not available as binaries, and furthermore, binary packages will not necessarily match the shared libraries on your system (see Section 8.1.4).
You should understand everything in Chapter 8 before proceeding with this chapter. Installing a package from source code usually involves the following steps:
Unpacking the source code archive.
Configuring the package.
Running make to build the programs.
Running make install to install the package.