![鉴于 r-api-3 问题,如何在 Debian Stretch 上安装 R?](https://linux22.com/image/121083/%E9%89%B4%E4%BA%8E%20r-api-3%20%E9%97%AE%E9%A2%98%EF%BC%8C%E5%A6%82%E4%BD%95%E5%9C%A8%20Debian%20Stretch%20%E4%B8%8A%E5%AE%89%E8%A3%85%20R%EF%BC%9F.png)
我尝试在运行全新安装的 Debian Stretch 的新计算机上从 CRAN 安装当前版本的 R (3.4.2),但它无法完全工作。例如,
root@machine:/home/myname# aptitude install r-cran-arm
The following NEW packages will be installed:
libnlopt0{a} littler{a} r-cran-abind{ab} r-cran-arm{b} r-cran-coda{ab}
r-cran-littler{a} r-cran-lme4{ab} r-cran-minqa{a} r-cran-nloptr{a}
r-cran-pkgkitten{ab} r-cran-rcpp{ab} r-cran-rcppeigen{ab}
0 packages upgraded, 12 newly installed, 0 to remove and 0 not upgraded.
Need to get 8,429 kB of archives. After unpacking 22.1 MB will be used.
The following packages have unmet dependencies:
r-cran-coda : Depends: r-api-3 which is a virtual package, provided by:
- r-base-core (3.3.3-1), but 3.4.2-1~stretchcran.0 is installed
r-cran-rcppeigen : Depends: r-api-3 which is a virtual package, provided by:
- r-base-core (3.3.3-1), but 3.4.2-1~stretchcran.0 is installed
r-cran-abind : Depends: r-api-3 which is a virtual package, provided by:
- r-base-core (3.3.3-1), but 3.4.2-1~stretchcran.0 is installed
r-cran-lme4 : Depends: r-api-3 which is a virtual package, provided by:
- r-base-core (3.3.3-1), but 3.4.2-1~stretchcran.0 is installed
r-cran-rcpp : Depends: r-api-3 which is a virtual package, provided by:
- r-base-core (3.3.3-1), but 3.4.2-1~stretchcran.0 is installed
r-cran-arm : Depends: r-api-3 which is a virtual package, provided by:
- r-base-core (3.3.3-1), but 3.4.2-1~stretchcran.0 is installed
r-cran-pkgkitten : Depends: r-api-3 which is a virtual package, provided by:
- r-base-core (3.3.3-1), but 3.4.2-1~stretchcran.0 is installed
The following actions will resolve these dependencies:
Keep the following packages at their current version:
1) r-cran-abind [Not Installed]
2) r-cran-arm [Not Installed]
3) r-cran-coda [Not Installed]
4) r-cran-lme4 [Not Installed]
5) r-cran-minqa [Not Installed]
6) r-cran-pkgkitten [Not Installed]
7) r-cran-rcpp [Not Installed]
8) r-cran-rcppeigen [Not Installed]
我尝试按照以下说明进行操作https://cran.r-project.org/bin/linux/debian/。我已将 /etc/apt/sources.list 的相关部分设置为
## R https://cran.r-project.org/
## deb https://cran.cnr.berkeley.edu/bin/linux/debian stretch-cran34/
deb http://cran.wustl.edu/bin/linux/debian stretch-cran34/
(我先尝试了伯克利网站,然后切换到看看这是否是我的问题。
我已导入 Johanne 的 Ranke 密钥。
r-base 和 r-base-dev 已安装。
我认为 r-api-3 是关键,但我不明白如何解决它,即使在阅读了 bugs.debian.org 上的线程之后也是如此。
有没有一个简单的过程可以用来解决这个问题?如果有必要,我可以 aptitude 清除 r-cran-... 中的所有内容并重新开始,但如果我可以从原来的位置修复它们,那就更好了。
针对约翰内斯建议的更新:
我昨天尝试了一些方法,但没有成功。例如,我尝试了 install.packages(rstanarm) 并得到了以下信息:
/usr/lib/R/etc/Makeconf:168: recipe for target 'lang__grammars__expression_grammar_inst.o' failed
make: *** [lang__grammars__expression_grammar_inst.o] 错误 1 错误:包 'rstan' 编译失败 * 删除 '/usr/local/lib/R/site-library/rstan' 错误:依赖项 'PKI'、'RCurl' 是不适用于软件包“rsconnect”* 删除“/usr/local/lib/R/site-library/rsconnect”错误:依赖项“igraph”不适用于软件包“twojs”* 删除“/usr/local/lib/R” /site-library/thirdjs' 错误:依赖项 'rsconnect'、'rstan'、' Threejs' 不适用于包 'shinystan' * 删除 '/usr/local/lib/R/site-library/shinystan' 错误:依赖项'rstan'、'shinystan' 不适用于软件包 'rstanarm' * 删除 '/usr/local/lib/R/site-library/rstanarm'
下载的源包位于 '/tmp/RtmpYtjSD9/downloaded_packages' 警告消息: 1:在 install.packages("rstanarm") 中:安装包 'PKI' 的退出状态非零 2:在 install.packages("rstanarm") 中") :软件包 'RCurl' 的安装具有非零退出状态 3:在 install.packages("rstanarm") 中:软件包 'igraph' 的安装具有非零退出状态 4:在 install.packages("rstanarm") 中:软件包“rstan”的安装具有非零退出状态5:在install.packages(“rstanarm”)中:软件包“rsconnect”的安装具有非零退出状态6:在install.packages(“rstanarm”)中:安装包“twojs”的退出状态为非零 7:在 install.packages(“rstanarm”) 中:安装包“shinystan”的退出状态为非零 8:在 install.packages(“rstanarm”) 中:安装包“rstanarm”的退出状态非零
我猜这可能是因为我现在有多种软件包。
除非你另有说明,当我有时间的时候,我倾向于使用 aptitude delete 来删除所有 R 软件包,保留指向 Debian 向后移植的sources.list,然后使用 install.packages() 和 update.packages( )在向后移植的(3.4.2?)基础 R 之上构建我的系统。这听起来安全并且可能有效吗?
答案1
该软件包r-cran-arm
不在 CRAN 上向后移植的软件包之列。此外,stretch 中可用的版本与r-cran-arm
R 3.4.2 的向后移植不兼容,因为它依赖于 r-api-3,而 CRAN 上的 R 3.4.2 提供了 r-api-3.4。
您可以arm
从 R 中安装该软件包,也可以在本地计算机上向后移植 r-cran-arm 以及日志中提到的其他软件包。如果您想走第二条路,我将很乐意为您提供帮助。