从wheezy安装软件包的最佳方法


9

我想在我的Debian Squeeze服务器上使用doxygen,但是我需要Debian Wheezy的版本,因为这显然包含我需要的错误修正

它不在backports中-请检查packages.debian.org/search?suite=squeeze-backports&searchon=names&keywords=doxygen(我是这里的新手,不允许将其作为正确的链接!)

我试图将Wheezy添加到我的sources.list文件中并运行,apt-get install -t wheezy doxygen但是它想从wheezy中安装太多;这是生产服务器,因此承受不起这种风险。

我假设从源代码进行编译也要从源代码编译以上所有其余内容?

还有其他解决方案吗?(例如某些虚拟化或chrooting?)等

Answers:


6

添加到您的/etc/apt/apt.conf

APT::Default-release "stable";

然后您可以运行:

aptitude install doxygen/wheezy

(与-t不同)


好的,我有默认发布位。我不信任智能(我曾经运行过一次,它说它想卸载很多东西,例如“ realpath”;我取消了,再次运行它,很高兴只安装了doxygen ...)。但这很奏效,谢谢。
artfulrobot 2011年

使用aptitude,您可以更好地处理依赖项,尤其是当您安装不同发行版的软件包时,必须手动修复apt-get(例如,在安装先前升级的软件包之前降级库软件包)。
Giovanni Toraldo 2011年

我不得不使用“ squeeze”而不是“ stable”,并且还deb http://mirror.rackspace.com/debian/ wheezy main必须先添加到/etc/apt/sources.list,然后才能起作用
Motin 2014年

2

从源代码进行编译很有可能工作。这就是backport所做的。当您编译Debian软件包时,生成的二进制软件包对软件包可执行文件所链接到的所有库都具有版本依赖性:安装的库版本可能不早于编译期间使用的版本。如果您在挤压系统上重新编译Wheezy软件包,则这些依赖性将使您可以在挤压条件下运行该软件包。假设没有显式依赖未压缩的软件包版本,我没有检查doxygen的具体情况。


1

我建议改用apt-pinning:

将以下内容添加到/ etc / apt / preferences或/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

并安装Giovanni指出的wheezy软件包:

apt-get install doxygen/wheezy

这比乔凡尼的建议更好吗?
artfulrobot 2012年

0

我不是100%确信prevu可以在debian上运行,但是应该:https : //wiki.ubuntu.com/Prevu我已经从较新版本的ubuntu安装了几个带有prevu的软件包。

如果您无法使它正常工作,请尝试从源代码进行编译,因为您可能不需要编译所有库,因为它们可能已经存在,它们只是较旧的版本。


prevu看起来很棒!但无法为debian找到它:-((当您说尝试编译时,您的意思是apt-get build-dep doxygen;apt-get source --compile doxygen;dpkg -i doxygen*.deb吗?我确定这会吸收所有其他内容吗?)
artfulrobot 2011年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.