How does system administrators identify which dependencies are missing when installing an application from source code?
3 Answers
Method 1: Read the requirements, compare with the list of installed packages.
Method 2: Run the configure script. It will fail on missing dependencies.
By the way, when you are thinking of installing from source, consider creating a package for your distribution's package manager on a test system and install the package on the production system. Package management systems are a blessing for administrators. Give them a chance.

- 6,511
- 20
- 23
-
1Absolutely. RTFM and compiler messages. – gWaldo Jan 04 '12 at 19:59
-
1A *good* configure script will check for all dependencies needed and warn appropriately. With *most* configure scripts you have to wait for the compiler to throw errors about missing headers or libraries. – daff Jan 04 '12 at 21:49
We don't install from source if it's at all avoidable. Otherweise, by reading the documentation and, when in doubt, trial and error which means usually to read (and understand!) the error messages during configure
and make
.

- 98,649
- 14
- 180
- 226
-
I respectfully disagree; in environments where I want to control the exact versions running, or where an app is installed to (or..., or...) I will compile manually. I did this most often in a primarily-Ubuntu server environment which I managed via Chef. – gWaldo Jan 04 '12 at 19:56
-
I've been bitten too many times by an update (especially is when it's a minor version release; aka a "point release") which breaks backward compatibility. – gWaldo Jan 04 '12 at 19:58
-
In that case you should really try to package the software into one or more `.deb` files, shouldn't you? – daff Jan 04 '12 at 21:50
Almost any major application has been packaged for some major linux distribution. This can be very helpful to you because almost everyone provides the scripts and information needed to build a given package.
So in addition to reading the manual, one thing I will do is simply go look at what the listed dependancies are in the package repositories.
For example if you needed to build PHP you might go take a quick look at all the build-depends for the php5 package http://packages.debian.org/source/sid/php5. The package information pages include links off to the web sites generally if for some reason you wanted to rebuild everything from scratch.

- 130,897
- 41
- 276
- 420