This is part of The Pile, a partial archive of some open source mailing lists and newsgroups.
Date: Tue, 15 May 2001 23:19:28 -0700 To: svlug@svlug.org Subject: Re: Compiling KDE (Was Re: [svlug] Karsten's browser reviews (updated)) From: Rick Moen <rick@linuxmafia.com> begin David E. Fox quotation: > Wayne Earl wrote: >> (<FLAMEBAIT>A ports tree is what apt-get should become when it grows >> up. (duck and grin.)</FLAMEBAIT>). Wayne's right, of course. But, equally, users and admirers of Jordan Hubbard's "ports" system (of whom I'm one) often envy the ease with which apt-get (_when_ combined with an enforced policy such as http://www.debian.org/doc/debian-policy/) lets people handle binary packages. After all, when the "ports" build process breaks on *BSD -- which happens annoyingly often -- what is it you fall back on? the BSD binary package system, of course. > How does apt-get handle the source dependencies.... Debian is not, of course, yet equipped to do the BSD "make world" trick from source packages, but it's getting there by degrees. If you are running Debian-stable (2.2 "potato"), then you have apt v. 0.3.x, which cannot handle build-deps for source-code packages entirely automatically: You have to read the description for the package you want to build from source, jot down what packages are named on the build-deps line, and apt-get those before doing "apt-get source --build packagename" for the final package. (apt-get then invokes dpkg-buildpackage and similar stuff.) By contrast, the Debian-testing ("woody") and Debian-unstable ("sid") branches now include the leading-edge version of apt (v. 0.5.3), fixing that problem. Here's the relevant stuff from the apt-get(8) manpage: build-dep build-dep causes apt-get to install/remove packages in an attempt to satisfy the build dependencies for a source packages. Right now virtual package build depends choose a package at random. source source causes apt-get to fetch source packages. APT will examine the available packages to decide which source package to fetch. It will then find and download into the current directory the newest available version of that source package. Source packages are tracked separately from binary pack