Debian sid下的RStudio安装失败:libgstreamer依赖问题

时间:2016-05-31 16:24:03

标签: r debian rstudio gstreamer

我使用Debian sid(amd64),每周滚动更新一次。我最近从他们的官方网站下载了桌面版本0.99.902的RStudio并发布了(当然是root用户):

dpkg -i rstudio-0.99.902-amd64.deb

无济于事:

dpkg:依赖性问题会阻止rstudio的配置:  rstudio取决于libgstreamer0.10-0;然而:   未安装包libgstreamer0.10-0。  rstudio取决于libgstreamer-plugins-base0.10-0;然而:   未安装包libgstreamer-plugins-base0.10-0。

系统上安装了这两个软件包的较新版本(1.0-0),但官方Debian存储库中不再提供那些较旧版本(0.10-0)。

如何安装RStudio并完全正常运行 Debian sid?当然,我已经从官方Debian安装了R debs 存储库,没有任何问题......

感谢您的帮助!

4 个答案:

答案 0 :(得分:28)

2017年7月20日发布的RStudio 1.0.153取决于GStreamer 1.0而不是GStreamer 0.10。它可以安装在现代的Debian / Ubuntu上而无需任何额外的设置,使这个问题和我的答案过时。

更具体地说,有两种不同的DEB包。一个针对Ubuntu 16.04(或更高版本)和Debian 9(或更高版本),仅以64位风格出现,并且依赖于较新的GStreamer 1.0。另一个软件包支持Ubuntu从12.04到15.10和Debian 8,它有32位和64位两种版本。这个仍然取决于较旧的GStreamer 0.10。

原始答案仍然如下。

截至2016年中期,RStudio对GStreamer 0.10有很强的依赖性,并且无法解决这个问题。您必须安装libgstreamer0.10-0libgstreamer-plugins-base0.10-0才能使用RStudio。

这些包可以从Debian Jessie(稳定版)轻松获取。只需将Jessie存储库添加到sources.list并使用apt-pinning为其提供较低的优先级:

# /etc/apt/sources.list:
deb http://httpredir.debian.org/debian jessie main
# /etc/apt/preferences.d/01_release:
Package: *
Pin: release o=Debian,a=unstable
Pin-Priority: 600

Package: *
Pin: release o=Debian,n=jessie
Pin-Priority: 10

然后发出apt-get update并跟进apt-get install libgstreamer0.10-0 libgstreamer-plugins-base0.10-0

如果您碰巧将RStudio .deb文件放入本地存储库,那么使用apt-get install rstudio和GStreamer0.10将被依赖解析器拉入。这具有将这些库标记为自动安装的额外优点 - 一旦RStudio将它们作为依赖项删除它们将被自动删除。

但这会破坏我的系统吗?

没有。

上游开发人员将GStreamer0.10和GStreamer1.0设计为可共同安装且能够同时运行(source)。事实上,自September 2012April 2016以来,两者都可以在Debian存储库中使用。

在此固定设置中,只有当Jessie是所请求包的唯一提供者时,才会引入Jessie存储库中的包。不存在使用stable版本的旧版本覆盖任何软件包的风险。

为什么RStudio依赖于过时的库?

因为GStreamer0.10是Debian Jessie和Ubuntu 12.04中提供的最新版本,他们想要支持两种发行版。

RStudio最终必须将其依赖关系升级到GStreamer1.0,因为它将逐渐成为唯一可用的版本。我想这个改变可能会在2017年春季推出。首先,对Ubuntu 12.04的支持将在4月结束。 Rstudio可能会将基本系统要求提高到14.04 - 同时具有GStreamer0.10和1.0。其次,Debian Stretch - 只有GStreamer1.0可用 - 预计将在那个时候发布。

答案 1 :(得分:1)

我发现Miroslaw的答案非常好。但是,由于时间的推移,你需要一个包:libssl1.0.0,所以你的设置apt-get看起来像 apt-get install libgstreamer0.10-0 libgstreamer-plugins-base0.10-0 libssl1.0.0

答案 2 :(得分:0)

  1. 从任何镜像下载您机器的libgstreamer0.10-0
  2. 在下载文件的目录中打开终端。
  3. 使用命令sudo dpkg -i file.deb安装它。示例sudo dpkg -i libgstreamer0.10-0_0.10.36-1ubuntu1_amd64.deb
  4. 现在打开rstudio.deb所在的目录并以相同的方式安装它。

答案 3 :(得分:0)