Linux.com: Buddying Up to BSD: Part Five - FreeBSD ContinuedFeb 08, 2000, 20:17 (0 Talkback[s])
(Other stories by Matt Michie)
"For those who have never experienced the delight of the ports tree, let me briefly explain. In the Linux world to install a program, you either download a binary packaged for your particular distribution or you hunt down and compile source code. Unfortunately, because each Linux distribution is subtly different you can run into weird dependency or compilation problems. Debian works around this problem by putting together its own packages and including a tool to automatically track down and install dependencies for you. Red Hat will also track dependencies, but won't auto-fetch the dependencies like Debian's apt-get. With Slackware, you are mostly expected to sort through all this on your own."
"The BSD ports tree is an elegant solution to the problem of installing and compiling Free Software. Instead of distributing packaged binaries, the FreeBSD team maintains a hierarchy of programs sorted into directories. To minimize wasted disk space on unnecessary source code, each program's directory has a Makefile and a patch. To install a program, one changes into the directory, becomes root and does a "make install". At this point, the source code is downloaded, patched, compiled, and installed. This process will also take care of needed dependencies."