我使用的是Linux Mint 17.2" Rafaela"。今天我安装了Canon iP2700系列的驱动程序。司机' deb包依赖于" libtiff4"包,但系统使用" libtiff5",所以我用
强制安装sudo dpkg --force-depends -i cnijfilter-*
它起作用:打印机工作得很好但是薄荷更新器无法更新,它说" cnijfilter-ip2700series包将被删除"。当然,我不想删除它。我该怎么办?
还有一件事:如果我这样做
sudo apt-get dist-upgrade
我得到类似的东西(我从西班牙语翻译)" cnijfilter-ip2700series有未解决的依赖项:取决于:libtiff4但无法安装。尝试使用-f选项"
如果我这样做
sudo apt-get -f dist-upgrade
它说" cnijfilter-ip2700series将被删除"
无论如何,我更喜欢使用mint updater,因为apt-get似乎破坏了系统设置,所以我更喜欢依赖于mint updater的解决方案。
答案 0 :(得分:4)
系统认为你的cnijfilter安装被破坏了,因为它缺少依赖性。由于它不可满足,建议卸载软件包实际上是一个非常好的解决方案。
您有多种选择:
您似乎可以download the source of the driver and compile it yourself。
更简单的解决方案是下载&手动安装libtiff4,either from Ubuntu或Debian的软件包。这两个版本的软件包应该可以在您的系统上安装(没有不可满足的依赖性)。这就是我对我(也是薄荷,也有这些Cancon驱动程序)系统的所作所为。
您可以修改包中的依赖项,以使apt 认为一切正常。当然,包中依赖于libtiff4的应用程序将被破坏,但实际的驱动程序(/usr/lib/cups/backend/cnijusb
)不是其中之一。修补它很容易:
# Unpack the deb package:
$ ar x cnijfilter-..._amd64.deb
# This will create 3 files: data.tar.gz, control.tar.gz and debian-binary
# Unpack control.tar.gz:
$ mkdir DEBIAN
$ cd DEBIAN
$ tar xzf ../control.tar.gz
# Edit the newly created control file:
$ your_favorite_editor control
# now, in the editor, remove the libtiff4 dependency from the Depends line
# Repack everything into a new deb file:
$ rm ../control.tar.gz
$ tar czf ../control.tar.gz *
$ cd ..
$ ar r cnijfilter-..._amd64.deb contol.tar.gz
之后,您更新的deb文件不再具有libtiff4作为依赖项。让apt卸载已安装的版本,使其不再抱怨,然后安装新创建的软件包。