2

我有一个为 Ubuntu 13.04 编译的 apt 包,并希望将其安装在 Ubuntu 14.04 上。有问题的包取决于libcogl12Ubuntu 14.04 上不可用的包(我假设由更新的 libcogl15 替换)。

为了解决这个问题,我下载了 cogl 源代码并手动构建 libcogl12:

sudo apt-get install freeglut3-dev libxcomposite-dev libglib2.0-dev libpango1.0-dev
curl -O http://ftp.gnome.org/pub/GNOME/sources/cogl/1.7/cogl-1.7.8.tar.xz
cd cogl-1.7.8
./configure --prefix=/usr
make
sudo checkinstall

checkinstall交互式菜单中,我libcogl12为结果包定义了一个名称。它的构建没有问题,但在安装时出现错误:

dpkg: dependency problems prevent configuration of libcogl12:
 libclutter-1.0-0:amd64 (1.16.4-0ubuntu2) breaks libcogl12 and is installed.

这个“A打破B并安装”是什么意思?我看不到任何有关此类错误的文档:(。

4

1 回答 1

1

取自这里:http ://debian-handbook.info/browse/stable/sect.package-meta-information.html

5.2.1.3。不兼容性:Breaks 字段

Breaks 字段的效果类似于 Conflicts 字段,但具有特殊含义。它表明一个包的安装将“破坏”另一个包(或它的特定版本)。一般来说,两个包之间的这种不兼容是暂时的,Breaks关系特指不兼容的版本。dpkg 将拒绝安装破坏已安装包的包,并且 apt-get 将尝试通过将可能被破坏的包更新到较新版本来解决问题(假定已修复,因此再次兼容) . 这种情况可能发生在没有向后兼容的更新的情况下:如果新版本不再与旧版本一起使用,并且在没有特殊规定的情况下导致另一个程序出现故障,就会出现这种情况。

于 2014-07-21T13:16:51.093 回答