9

I want to use doxygen on my Debian Squeeze server, but I need the version from Debian Wheezy because this apparently contains the bugfix I need.

It's not in backports -- check packages.debian.org/search?suite=squeeze-backports&searchon=names&keywords=doxygen (I'm new here and wasn't allowed this as a proper link!)

I tried adding Wheezy to my sources.list file and running apt-get install -t wheezy doxygen but it wants to install too much from wheezy; This is a production server so can't afford this risk.

I'm assuming that compiling from source is going to want to compile all the rest of the above from source too?

Any other solutions? (e.g. some virtualisation or chrooting?) etc

4 Answers 4

6

Add to your /etc/apt/apt.conf:

APT::Default-release "stable";

And then you can run:

aptitude install doxygen/wheezy

(isn't the same thing as with -t)

3
  • Ok I had the default-release bit. I don't trust aptitude (I ran it once, it said it wanted to uninstall lots, like 'realpath'; I cancelled, ran it again and it was happy to just install doxygen...). But it worked, thanks. Oct 18, 2011 at 16:28
  • with aptitude you have better dependency handling, especially when you install packages from different release, that with apt-get must be fixed by hand (like, downgrade a library package before installing a previously upgraded package). Oct 18, 2011 at 18:26
  • I had to use "squeeze" instead of "stable" and also add deb http://mirror.rackspace.com/debian/ wheezy main to /etc/apt/sources.list before it would work
    – Motin
    Sep 16, 2014 at 16:04
2

Compiling from source has a good chance of working. It's what backports does. When you compile a Debian package, the resulting binary package has a versioned dependency on all the libraries that the package's executables are linked against: the installed library versions may not be older than the versions used during compilation. If you recompile a wheezy package on a squeeze system, these dependencies will let you run the package on squeeze. That's assuming there isn't an explicit dependency against a package version that isn't in squeeze, which I haven't checked for the specific case of doxygen.

1

I would recommend using apt-pinning instead:

Add the following to /etc/apt/preferences or alternatively /etc/apt/preferences.d/pinning

Explanation: Uninstall or do not install any Debian-originated
Explanation: package versions other than those in the stable distro
Package: *
Pin: release a=stable
Pin-Priority: 900

Package: *
Pin: release o=Debian
Pin-Priority: -10

and the install the wheezy package as Giovanni pointed out:

apt-get install doxygen/wheezy
1
  • how is that better than Giovanni's suggestion? Apr 7, 2012 at 19:52
0

I'm not 100% sure prevu works on debian, but it should: https://wiki.ubuntu.com/Prevu I've installed several packages with prevu from newer versions of ubuntu.

If you can't get it to work try compiling from source because maybe you won't need to compile all the libraries as they are probably already present, they are just older versions.

1
  • prevu looks great! but can't find it for debian :-( When you say try compiling, do you mean apt-get build-dep doxygen;apt-get source --compile doxygen;dpkg -i doxygen*.deb ? I'm sure that will draw in all the other stuff? Oct 18, 2011 at 14:43

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .