安装 Skype 后依赖关系中断

安装 Skype 后依赖关系中断

安装 skype 后,我的依赖项被破坏了。我尝试运行 apt-get -f install,但只收到错误消息。我在 AMD64 上运行 Ubuntu 12.04。如果您需要更多信息,请告诉我。

以下软件包具有未满足的依赖关系:
libasound2-插件:i386:
依赖: libjack-jackd2-0:i386 (>= 1.9.5~dfsg-14)
但它不会被安装或 libjack-0.116:i386
获取:1 http://ppa.launchpad.net/dns/sound/ubuntu/ precise/main libjack-jackd2-0 i386 1.9.8~dfsg.2-1precise1 [202 kB]
1 秒内获取 202 kB(105 kB/秒)            

正在解压 libjack-jackd2-0:i386(来自 .../libjack-jackd2-0_1.9.8~dfsg.2-1precise1_i386.deb)...
dpkg: 处理 /var/cache/apt/archives/libjack-jackd2-0_1.9.8~dfsg.2-1precise1_i386.deb (--unpack) 时出错:
 './usr/share/doc/libjack-jackd2-0/buildinfo.gz' 与系统上的同一文件不同
dpkg-deb:错误:子进程 paste 被信号终止(管道断裂)
处理时遇到错误:
 /var/cache/apt/archives/libjack-jackd2-0_1.9.8~dfsg.2-1precise1_i386.deb
E: 子进程 /usr/bin/dpkg 返回错误代码 (1)

谢谢帮助。可能是 LMMS 导致的,但安装 skype 后问题就出现了。:)

答案1

感谢您的支持。我可以使用以下方法修复此问题:

sudo dpkg --remove libasound2:i386 libasound2-plugins:i386

我尝试通过两种方式(软件中心和 Skype.com)安装 Skype。现在我只需从官方 tarball 运行 +x。

答案2

在 x64 Ubuntu 14.04 上,遇到了与 32 位 exe 相关的 WINE 类似问题。多架构 :i386 wine 提供对 32 位 exe 的支持,它依赖于各种非 WINE 库的 :i386 多架构版本。

(据我了解,这些 :i386 软件包与 Ubuntu i386 使用的二进制文件相同,节省了镜像空间,并节省了构建时间,因为无需构建任何 32 位 x64 版本。当然,让您可以同时安装几乎所有东西的 32 位和 64 位版本,这样您就可以在 x64 系统上运行任何 i386 Linux 二进制文件。除了节省构建时间和镜像空间外,没有人需要专门将任何东西打包为 32 位 x64。)

wine1.6-i386:i386 1:1.6.2-0ubuntu4 推荐:libasound2-plugins:i386(我认为,如果另一个程序有开放的音频输出流,声音就需要它,因为这是 alsa->pulseaudio 模块所在的地方。)

libasound2-plugins:i386 1.0.27-2ubuntu2 依赖:libjack-jackd2-0 (>= 1.9.5~dfsg-14) | libjack-0.116

尝试安装 libasound2-plugins:i386 会尝试引入 libjack-jackd2-0,这与 libjack0 冲突。我已经安装了 x64 libjack0,因此包管理器会发现存在冲突。

不幸的是,apt 没有意识到它可以通过安装 libjack0:i386 而不是 libjack-jackd2-0:i386 来解决依赖关系,以满足 libasound2-plugins:i386 的依赖关系。 手动选择它让我选择 libasound2-plugins:i386 而不会发生冲突。 (我使用了 aptitude)。

是的,当需要 pulseaudio 时,声音可以在 x86 应用程序(包括 wine)中正常工作。起初我以为这是一个打包错误,但事实并非如此,原来这只是多架构依赖项解析器中的一个错误。

答案3

看起来像是一个损坏的包。您需要删除 libasound2-plugins。您可能必须使用此行强制删除它sudo dpkg --remove -force --force-remove-reinstreq libasound2-plugins。(以下是一些其他命令当 apt-get 变得混乱时它能够帮助你清理它。)

智慧无限的 Skype 并没有费心发布其 Linux 客户端的 64 位版本。因此,它依赖于其所依赖的所有内容的 32 位版本。所以,您也需要这样做。

要安装库,请apt-get install ia32-libs在安装 Skype 之前运行。

相关内容