On 18 Feb 2008, at 11:10 am, Leif Nixon wrote:
Tim Cutts <[EMAIL PROTECTED]> writes:
On 15 Feb 2008, at 11:57 pm, Andrew Piskorski wrote:
Their only other major flaw that I'm aware of, is that, just like
all
the rpm based tools, you can only have one single version of a
binary
package installed at a time (yuck!).
That's not true. Look at the gcc or emacs packages. Or automake.
Or
autoconf. Many, many versions, all of which can coexist on your
system at the same time, and you can use update-alternatives to
choose
which one is the default. The trick is that the packages have to
have
different names, so in the case of gcc there are gcc-3.3, gcc-3.4,
gcc-4.1 etc.
But that's not the same package, then. Hm, can you have a package
depend on "any version of gcc", without listing the various gcc
packages explicitly?
Yes. That's what "Provides" does in a package's control file. So,
for example, postfix, exim and sendmail all provide "mail-transport-
agent". Anything that needs an MTA then depends on "mail-transport-
agent" rather than a specific MTA package. The same thing happens for
C compilers. If you to aptitude show for gcc-4.1, for example:
Package: gcc-4.1
New: yes
State: installed
Automatically installed: yes
Version: 4.1.1-21
Priority: optional
Section: devel
Maintainer: Debian GCC Maintainers <[EMAIL PROTECTED]>
Uncompressed Size: 1323k
Depends: gcc-4.1-base (= 4.1.1-21), cpp-4.1 (= 4.1.1-21), binutils (>=
2.16.1cvs20051214), libgcc1 (>= 1:4.1.1-21), libssp0, libc6 (>= 2.3.6-6)
Recommends: libc6-dev (>= 2.3.6-7), libmudflap0-dev (>= 4.1.1-21)
Suggests: gcc-4.1-doc (>= 4.1.1), gcc-4.1-locales (>= 4.1.1), libc6-
dev-amd64, lib64gcc1 (>= 1:4.1.1-21), lib64ssp0
Conflicts: gcj-4.1 (< 4.1.1), libssp0-dev (< 4.1.1-6)
Replaces: gcj-4.1 (< 4.1.1), libssp0-dev (< 4.1.1-6)
Provides: c-compiler, libssp0-dev
Description: The GNU C compiler
This is the GNU C compiler, a fairly portable optimizing compiler
for C.
Tags: devel::compiler, devel::lang:c, implemented-in::c,
interface::commandline, role::program, suite::gnu, works-
with::software:source
You can see it provides a virtual package "c-compiler", and that's
what something should depend on if it doesn't actually care which gcc
package is installed on the machine, as long as there is one.
Tim
--
The Wellcome Trust Sanger Institute is operated by Genome Research
Limited, a charity registered in England with number 1021457 and a
company registered in England with number 2742969, whose registered
office is 215 Euston Road, London, NW1 2BE.
_______________________________________________
Beowulf mailing list, [email protected]
To change your subscription (digest mode or unsubscribe) visit
http://www.beowulf.org/mailman/listinfo/beowulf