2011-09-13 48 views
0

我最近需要将debian squeeze从1.42升级到1.48。这涉及到删除当前升压1.42包和从颠覆1.48包安装。apt-get boost虚假软件包安装

不幸的是,这打破了一些Debian的依赖关系 - 有没有办法将一个条目放入包管理器数据库,以表明安装了boost 1.48,这样系统就不会尝试安装boost 1.42库, Debian的?

回答

1

有一些软件包可以帮助解决这个问题,例如参见equivs包。

但是,如果你有链接到依赖关系,我不确定你可以欺骗你。取决于特定版本的某些应用程序将会中断。

通常可以安装多个包装并排加速版本的一面,见下文1.40和1.42版本的序列化库,再加上表明当前开发包将使用1.42:

[email protected]:~$ dpkg -l | grep libboost-serialization | cut -c-70 
ii libboost-serialization-dev   1.42.0.1ubuntu1    
ii libboost-serialization1.40.0   1.40.0-6ubuntu1    
ii libboost-serialization1.42-dev  1.42.0-4ubuntu2    
ii libboost-serialization1.42.0   1.42.0-4ubuntu2    
[email protected]:~$ 

当我需要较新的,我有时从一个较新的debian发行“借用”包并在本地建立他们。

而且当然还有/usr/local/lib所在的包管理系统追上之前,你总是可以安装一个本地副本。

+0

我的备份选项只不过是当地安装在/ usr/local/lib目录和刚刚离开安装做的事情是Debian 1.42 - 而是热衷系统整洁,但可能必须走那条路 - 目前与测试分支试验和钉住包裹。 –