我知道有很多帖子都在讨论这个类似的问题。它们各自有不同的解决方案,每个问题都略有不同,但似乎都围绕着库依赖关系。
据我所知,Ubuntu 软件中心和 Steam Powered 网站上的 Steam 版本并不相同。帖子进一步证实了这一点:http://ubuntuforums.org/showthread.php?t=2241926以及本地检查版本。
其实这并没有太大区别。我下载了两个 Debian 软件包,它们似乎遇到了同样的问题。未解决的依赖关系。
Steam needs to install these additional packages:
libgl1-mesa-dri:i386, libgl1-mesa-glx:i386, libc6:i386
[sudo] password for [username]:
.........................................................................................
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
libgl1-mesa-glx:i386 : Depends: libglapi-mesa:i386 (= 10.1.3-0ubuntu0.5)
unity-control-center : Depends: libcheese-gtk23 (>= 3.4.0) but it is not going to be installed
Depends: libcheese7 (>= 3.0.1) but it is not going to be installed
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.
Press return to continue:
有趣的是,一位发帖者在一个月前的帖子中建议升级发行版:在 ubuntu 14.04 libc.so.6 上安装 Steam 出现错误,请帮忙
我不是那种远离稳定软件的人,我正在使用最新的 LTS 版本。我以前用过最近的版本,无法忍受它的不稳定性和漏洞,所以对我来说......直接跳到最底层说“哦,好吧。我最好将我的发行版升级到最新版”是没有意义的,而且没有提供有效的解释;而这并没有提供。
我必须说这篇文章是迄今为止最有帮助的:我正在尝试在 ubuntu 14.04 LTS 64 位上安装 Steam
它无意中触及了一些我之前没有意识到的事情。这些软件包已经安装,但 Steam 却抱怨它们不存在。当我跑步的时候sudo apt-get install {dependent packages here}
,Ubuntu 抱怨它们已经安装!此时,Aptitude 变得毫无用处,因为我意识到我无法冗余地解决已解决的依赖关系(我可以,但我真的不明白这一点)。
就在那时,我偶然发现了下一个帖子:http://www.askubuntu.com/questions/588024/steam-install-error-on-14-04-ubuntu-64bit
这引起了我的兴趣,因为这意味着我应该删除当前的库并安装新的库,尽管我不确定是否应该使用trusty
而不是utopic
,这值得研究。但它被标记为一种解决方法(我还没有亲自尝试过)。
sudo apt-get install libc6:i386 libgl1-mesa-dri-lts-utopic:i386 libgl1-mesa-glx-lts-utopic:i386
这个很有趣,因为它建议打开对 i386 包的支持。
sudo dpkg --add-architecture i386
sudo apt-get update
我很确定这不起作用,因为我确实尝试了一下,但我认为 i386 是受支持的,除非这些软件包已被弃用(它们已被弃用)。
我采取的步骤:
- 全新安装 Ubuntu LTS 14.04.3
- 在安装期间和安装后运行更新
- 直接从 Steam 下载 Debian 软件包
- 跑了
dpkg
又跑 Steam - Steam 提示需要添加其他软件包
- 输入管理员密码(此步骤总是失败!)
- 按回车键继续
- 然后 Steam 运行了更新并立即启动
每次我启动 Steam 时,它都会提示我输入 Ubuntu 默认附带的软件包(取决于 Ubuntu 如何为您的设备进行配置)。
我注意到steam-launcher
与应用程序不同steam
,并且永远不会真正执行该应用程序。因此,当steam
最终运行时,我将图标锁定到启动器。
我还没有找到有效的解决方案,上面的帖子似乎也没有提供解决方案。如果我碰巧找到了有效的解决方案,我会发布,但在此之前,如果有人有任何建议,请务必...发布!
2016 年 10 月 3 日更新:我从未找到该问题的解决方案,但这篇文章有助于整合几个类似或相关的问题。我后来发现 15.10 实现了来自 steam 的官方存储库,而 15.04 <= 以前有较旧的存储库,现在已弃用。(您随时可以下载 deb 文件,感谢 @Organic Marble,评论下方提供了链接)。我最终决定从 14.04.1 迁移到 15.10,并一直使用到 16.04.1 发布。Steam 运行良好,可以使用 apt 工具轻松安装 15.10 >= 及更高版本。
答案1
只需打开终端并输入:
sudo apt-get install steam -y
这似乎修复了所有未满足的依赖关系。这对我有用。
答案2
要安装 steam,如果您遇到问题,最好的方法是使用带有 dpkg + apt 的终端。这些实用程序将为您提供最精细的控制。如果遇到问题,您可以复制/粘贴错误以获得更多帮助。
此步骤也适用于 Debian。
- 下载 steam DEB 包
- 启用 32 位存储库:
sudo dpkg --add-architecture i386
- 更新软件包列表:
sudo apt-get update
- 尝试使用 dpkg 安装该包,由于缺少依赖项,它将失败:
sudo dpkg -i steam.deb
- 现在,纠正缺少的依赖项:
sudo apt-get install -f
- 验证 steam 是否安装正确:
sudo dpkg -i steam.deb
此时应该安装蒸汽。
曾经有过 Steam 中的库产生问题的情况,例如:https://askubuntu.com/a/706796/430526
在其他情况下,Steam 会抱怨,因为未安装带有 32 位 3D 库的软件包,您可能需要安装这些软件包。例如,如果您使用 nvidia 驱动程序:install libgl1-nvidia-glx:i386
关于缺少 32 位 3D 驱动程序的有用链接:https://www.codeweavers.com/support/wiki/Diag/MissingLibGL
如果不起作用,请粘贴你的终端的内容,通常很容易从中看出问题所在。