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
Add to your
/etc/apt/apt.conf
:And then you can run:
(isn't the same thing as with -t)
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.
I would recommend using apt-pinning instead:
Add the following to /etc/apt/preferences or alternatively /etc/apt/preferences.d/pinning
and the install the wheezy package as Giovanni pointed out:
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.