Java教程

dpkg安装deb缺少依赖包的解决方法

本文主要是介绍dpkg安装deb缺少依赖包的解决方法,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

【先贴出解决方案(基于Ubuntu)】:

使用dpkg -i   *.deb 的时候出现依赖没有安装

使用apt-get -f -y install  解决依赖问题后再执行dpkg安装deb包

=====================1.下面是遇到的依赖没有安装===========================

问题

horizon@horizon-pc ~/下载 $ sudo dpkg -i youdao-dict_1.1.0-0-ubuntu_amd64.deb
[sudo] password for horizon:
Selecting previously unselected package youdao-dict.
(正在读取数据库 ... 系统当前共安装有 163525 个文件和目录。)
Preparing to unpack youdao-dict_1.1.0-0-ubuntu_amd64.deb ...
Unpacking youdao-dict (1.1.0-0~ubuntu) ...
dpkg: dependency problems prevent configuration of youdao-dict:
 youdao-dict 依赖于 python3-pyqt5;然而:
  未安装软件包 python3-pyqt5。
 youdao-dict 依赖于 python3-requests;然而:
  未安装软件包 python3-requests。
 youdao-dict 依赖于 python3-xlib;然而:
  未安装软件包 python3-xlib。
 youdao-dict 依赖于 tesseract-ocr;然而:
  未安装软件包 tesseract-ocr。
 youdao-dict 依赖于 tesseract-ocr-eng;然而:
  未安装软件包 tesseract-ocr-eng。
 youdao-dict 依赖于 tesseract-ocr-chi-sim;然而:
  未安装软件包 tesseract-ocr-chi-sim。
 youdao-dict 依赖于 tesseract-ocr-chi-tra;然而:
  未安装软件包 tesseract-ocr-chi-tra。
 youdao-dict 依赖于 python3-pil;然而:
  未安装软件包 python3-pil。
 youdao-dict 依赖于 python3-pyqt5.qtmultimedia;然而:
  未安装软件包 python3-pyqt5.qtmultimedia。
 youdao-dict 依赖于 python3-pyqt5.qtquick;然而:
  未安装软件包 python3-pyqt5.qtquick。
 youdao-dict
dpkg: error processing package youdao-dict (--install):
 依赖关系问题 - 仍未被配置
Processing triggers for hicolor-icon-theme (0.13-1) ...
Processing triggers for gnome-menus (3.10.1-0ubuntu2) ...
Processing triggers for desktop-file-utils (0.22-1ubuntu1) ...
Processing triggers for mime-support (3.54ubuntu1) ...
在处理时有错误发生:
 youdao-dict

===============2.解决依赖========================

执行命令:

horizon@horizon-pc ~/下载 $ sudo apt-get -f -y install

==============3.重新使用dpkg安装deb包=============

horizon@horizon-pc ~/下载 $ sudo dpkg -i youdao-dict_1.1.0-0-ubuntu_amd64.deb
(正在读取数据库 ... 系统当前共安装有 164650 个文件和目录。)
Preparing to unpack youdao-dict_1.1.0-0-ubuntu_amd64.deb ...
Unpacking youdao-dict (1.1.0-0~ubuntu) over (1.1.0-0~ubuntu) ...
正在设置 youdao-dict (1.1.0-0~ubuntu) ...
Processing triggers for hicolor-icon-theme (0.13-1) ...
Processing triggers for gnome-menus (3.10.1-0ubuntu2) ...
Processing triggers for desktop-file-utils (0.22-1ubuntu1) ...
Processing triggers for mime-support (3.54ubuntu1) ...

==============4.启动刚才安装的软件:有道词典============

===========================================================================================================================================================================

【no soluation ,only reference】

依赖包还会出现另外一种情况,在安装网易云音乐的时候出现:

网易音乐包:  

netease-cloud-music_1.1.0_amd64_ubuntu.deb    (从网易官网下载)

 

直接安装会遇见依赖问题:

复制代码
horizon@horizon-pc ~/下载 $ sudo dpkg -i netease-cloud-music_1.1.0_amd64_ubuntu.deb 
Selecting previously unselected package netease-cloud-music.
(正在读取数据库 ... 系统当前共安装有 166052 个文件和目录。)
Preparing to unpack netease-cloud-music_1.1.0_amd64_ubuntu.deb ...
Unpacking netease-cloud-music (1.1.0) ...
dpkg: dependency problems prevent configuration of netease-cloud-music:
 netease-cloud-music 依赖于 libdbus-1-3 (>= 1.8.1);然而:
系统中 libdbus-1-3:amd64 的版本为 1.6.18-0ubuntu4.5。
 netease-cloud-music 依赖于 libstdc++6 (>= 5.2);然而:
系统中 libstdc++6:amd64 的版本为 4.8.4-2ubuntu1~14.04.4。
 netease-cloud-music 依赖于 libtag1v5 (>= 1.9.1-2.4ubuntu1);然而:
  未安装软件包 libtag1v5。

dpkg: error processing package netease-cloud-music (--install):
 依赖关系问题 - 仍未被配置
Processing triggers for libc-bin (2.19-0ubuntu6.14) ...
Processing triggers for desktop-file-utils (0.22-1ubuntu1.1) ...
Processing triggers for mime-support (3.54ubuntu1.1) ...
Processing triggers for gnome-menus (3.10.1-0ubuntu2) ...
Processing triggers for hicolor-icon-theme (0.13-1) ...
在处理时有错误发生:
 netease-cloud-music
复制代码

如果按照第一情况的处理方法处理的话 会出现以下的情况:

复制代码
horizon@horizon-pc ~/下载 $ sudo apt-get -f -y install
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
正在更正依赖关系... 完成
下列软件包将被【卸载】:
  netease-cloud-music
升级了 0 个软件包,新安装了 0 个软件包,要卸载 1 个软件包,有 24 个软件包未被升级。
有 1 个软件包没有被完全安装或卸载。
解压缩后将会空出 237 MB 的空间。
(正在读取数据库 ... 系统当前共安装有 166275 个文件和目录。)
Removing netease-cloud-music (1.1.0) ...
Processing triggers for libc-bin (2.19-0ubuntu6.14) ...
Processing triggers for hicolor-icon-theme (0.13-1) ...
Processing triggers for desktop-file-utils (0.22-1ubuntu1.1) ...
Processing triggers for mime-support (3.54ubuntu1.1) ...
Processing triggers for gnome-menus (3.10.1-0ubuntu2) ...
W: Duplicate sources.list entry http://dl.google.com/linux/chrome/deb/ stable/main amd64 Packages (/var/lib/apt/lists/dl.google.com_linux_chrome_deb_dists_stable_main_binary-amd64_Packages)
W: 您可能需要运行 apt-get update 来解决这些问题
复制代码

按照提示进行操作:

复制代码
horizon@horizon-pc ~/下载 $ sudo apt-get update
......
忽略 http://ppa.launchpad.net trusty/main Translation-zh 
忽略 http://packages.linuxmint.com rebecca/import Translation-zh_CN
忽略 http://packages.linuxmint.com rebecca/import Translation-zh
忽略 http://packages.linuxmint.com rebecca/import Translation-en
忽略 http://packages.linuxmint.com rebecca/main Translation-zh_CN
忽略 http://packages.linuxmint.com rebecca/main Translation-zh
忽略 http://packages.linuxmint.com rebecca/main Translation-en
忽略 http://packages.linuxmint.com rebecca/upstream Translation-zh_CN
忽略 http://packages.linuxmint.com rebecca/upstream Translation-zh
忽略 http://packages.linuxmint.com rebecca/upstream Translation-en
下载 15.4 kB,耗时 2分 19秒 (110 B/s)
W: GPG 错误:http://ppa.launchpad.net trusty InRelease: 由于没有公钥,无法验证下列签名: NO_PUBKEY 5A9A06AEF9CB8DB0
W: 无法下载 http://dl.google.com/linux/chrome/deb/dists/stable/Release Unable to find expected entry 'main/binary-i386/Packages' in Release file (Wrong sources.list entry or malformed file)

E: Some index files failed to download. They have been ignored, or old ones used instead.
复制代码

然后再安装试试:

复制代码
horizon@horizon-pc ~/下载 $ sudo dpkg -i netease-cloud-music_1.1.0_amd64_ubuntu.deb 
Selecting previously unselected package netease-cloud-music.
(正在读取数据库 ... 系统当前共安装有 166052 个文件和目录。)
Preparing to unpack netease-cloud-music_1.1.0_amd64_ubuntu.deb ...
Unpacking netease-cloud-music (1.1.0) ...
dpkg: dependency problems prevent configuration of netease-cloud-music:
 netease-cloud-music 依赖于 libdbus-1-3 (>= 1.8.1);然而:
系统中 libdbus-1-3:amd64 的版本为 1.6.18-0ubuntu4.5。
 netease-cloud-music 依赖于 libstdc++6 (>= 5.2);然而:
系统中 libstdc++6:amd64 的版本为 4.8.4-2ubuntu1~14.04.4。
 netease-cloud-music 依赖于 libtag1v5 (>= 1.9.1-2.4ubuntu1);然而:
  未安装软件包 libtag1v5。

dpkg: error processing package netease-cloud-music (--install):
 依赖关系问题 - 仍未被配置
Processing triggers for libc-bin (2.19-0ubuntu6.14) ...
Processing triggers for desktop-file-utils (0.22-1ubuntu1.1) ...
Processing triggers for mime-support (3.54ubuntu1.1) ...
Processing triggers for gnome-menus (3.10.1-0ubuntu2) ...
Processing triggers for hicolor-icon-theme (0.13-1) ...
在处理时有错误发生:
 netease-cloud-music
horizon@horizon-pc ~/下载 $ sudo apt-get -f -y install
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
正在更正依赖关系... 完成
下列软件包将被【卸载】:
  netease-cloud-music
升级了 0 个软件包,新安装了 0 个软件包,要卸载 1 个软件包,有 24 个软件包未被升级。
有 1 个软件包没有被完全安装或卸载。
解压缩后将会空出 237 MB 的空间。
(正在读取数据库 ... 系统当前共安装有 166275 个文件和目录。)
Removing netease-cloud-music (1.1.0) ...
Processing triggers for libc-bin (2.19-0ubuntu6.14) ...
Processing triggers for hicolor-icon-theme (0.13-1) ...
Processing triggers for desktop-file-utils (0.22-1ubuntu1.1) ...
Processing triggers for mime-support (3.54ubuntu1.1) ...
Processing triggers for gnome-menus (3.10.1-0ubuntu2) ...
W: Duplicate sources.list entry http://dl.google.com/linux/chrome/deb/ stable/main amd64 Packages (/var/lib/apt/lists/dl.google.com_linux_chrome_deb_dists_stable_main_binary-amd64_Packages)
W: 您可能需要运行 apt-get update 来解决这些问题
复制代码

总结:从以上红色字体看出来两个问题:

  1. 之前准备安装网易云音乐的deb包,没有正确安装,如果再次进行安装和 apt-get -f -y install 操作的时候会让删除之前安装的包。

       2.  【source】源出了问题.

解决方案:

  编辑源文件

sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak

        添加ali源:

复制代码
deb-src http://archive.ubuntu.com/ubuntu xenial main restricted #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main restricted multiverse universe #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted multiverse universe #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
deb http://mirrors.aliyun.com/ubuntu/ xenial multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse #Added by software-properties
deb http://archive.canonical.com/ubuntu xenial partner
deb-src http://archive.canonical.com/ubuntu xenial partner
deb http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted multiverse universe #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial-security universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-security multiverse
复制代码

更新源:

复制代码
horizon@horizon-pc /etc/apt $ sudo apt-get update
horizon@horizon-pc /etc/apt $ sudo apt-get upgrade -f
正在读取软件包列表... 完成
正在分析软件包的依赖关系树 
正在读取状态信息... 完成 
正在更正依赖关系... 失败。
下列软件包有未满足的依赖关系:
netease-cloud-music : 依赖: libdbus-1-3 (>= 1.8.1) 但是 1.6.18-0ubuntu4.5 已经安装
依赖: libstdc++6 (>= 5.2) 但是 4.8.4-2ubuntu1~14.04.4 已经安装
依赖: libtag1v5 (>= 1.9.1-2.4ubuntu1) 但是它还没有被安装
E: 错误,pkgProblemResolver::Resolve 发生故障,这可能是有软件包被要求保持现状的缘故。
E: 无法更正依赖关系
复制代码

更新完进行升级的时候出现了包冲突,所以需要先清除冲突包:

复制代码
horizon@horizon-pc /etc/apt $ sudo apt-get purge netease-cloud-music
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
下列软件包将被【卸载】:
  netease-cloud-music*
升级了 0 个软件包,新安装了 0 个软件包,要卸载 1 个软件包,有 1889 个软件包未被升级。
有 1 个软件包没有被完全安装或卸载。
解压缩后将会空出 237 MB 的空间。
您希望继续执行吗? [Y/n] y
(正在读取数据库 ... 系统当前共安装有 166275 个文件和目录。)
Removing netease-cloud-music (1.1.0) ...
Processing triggers for libc-bin (2.19-0ubuntu6.14) ...
Processing triggers for hicolor-icon-theme (0.13-1) ...
Processing triggers for desktop-file-utils (0.22-1ubuntu1.1) ...
Processing triggers for mime-support (3.54ubuntu1.1) ...
Processing triggers for gnome-menus (3.10.1-0ubuntu2) ...
复制代码

再进行升级操作:

复制代码
horizon@horizon-pc /etc/apt $ sudo apt-get update
horizon@horizon-pc /etc/apt $ sudo apt-get upgrade -f
......
升级了 936 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 953 个软件包未被升级。
需要下载 243 MB 的软件包。
解压缩后会消耗掉 186 MB 的额外空间。
您希望继续执行吗? [Y/n] y
......
正在从软件包中解出模板:100%
正在预设定软件包 ...
(正在读取数据库 ... 系统当前共安装有 166052 个文件和目录。)
Preparing to unpack .../libc-bin_2.27-3ubuntu1_amd64.deb ...
dpkg: error processing archive /var/cache/apt/archives/libc-bin_2.27-3ubuntu1_amd64.deb (--unpack):
 触发器配置项文件包含位置指令 interest-await
dpkg: considering deconfiguration of libc-bin, which would be broken by 安装 locales ...
dpkg: no, libc-bin is essential, will not deconfigure
 it in order to enable 安装 locales
dpkg: error processing archive /var/cache/apt/archives/locales_2.27-3ubuntu1_all.deb (--unpack):
 安装 locales 将破坏现有软件
dpkg: considering deconfiguration of locales, which would be broken by 安装 libc6:amd64 ...
dpkg: yes, will deconfigure locales (broken by libc6:amd64)
Preparing to unpack .../libc6_2.27-3ubuntu1_amd64.deb ...
De-configuring locales (2.13+git20120306-12.1) ...
De-configuring libc6:i386 (2.19-0ubuntu6.14) ...
Checking for services that may need to be restarted...
Checking init scripts...
Nothing to restart.
Unpacking libc6:amd64 (2.27-3ubuntu1) over (2.19-0ubuntu6.14) ...
Preparing to unpack .../libc6_2.27-3ubuntu1_i386.deb ...
Checking for services that may need to be restarted...
Checking init scripts...
Nothing to restart.
Unpacking libc6:i386 (2.27-3ubuntu1) over (2.19-0ubuntu6.14) ...
Preparing to unpack .../base-files_10.1ubuntu2.3_amd64.deb ...
Unpacking base-files (10.1ubuntu2.3) over (7.2ubuntu5.5) ...
Processing triggers for libc-bin (2.19-0ubuntu6.14) ...
Processing triggers for mintsystem (7.9.7) ...
Processing triggers for plymouth-theme-ubuntu-text (0.8.8-0ubuntu17.2) ...
update-initramfs: deferring update (trigger activated)
Processing triggers for cracklib-runtime (2.9.1-1build1) ...
Processing triggers for install-info (5.2.0.dfsg.1-2) ...
Processing triggers for man-db (2.6.7.1-1ubuntu1) ...
Processing triggers for initramfs-tools (0.103ubuntu4.11) ...
update-initramfs: Generating /boot/initrd.img-3.13.0-37-generic
Warning: No support for locale: zh_CN.utf8
E: Sub-process /usr/bin/dpkg returned an error code (1)
复制代码

 

作者:horizonli
出处:http://www.cnblogs.com/horizonli/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。 如果您认为文章还不错或者有所收获,您可以通过扫描下方的二维码进行随性打赏(¥1/¥2/¥5)以及点击左下角的【好文要顶】按钮以示支持,或者扫描关注即将写作的公众号二维码,因为这几种方式都是支持我继续写作,分享的最大动力!公众号将记录工作生活,技术内容,个性观点等内容,欢迎您的关注
这篇关于dpkg安装deb缺少依赖包的解决方法的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!