我无法在rstanarm
上运行的R 3.5.3
上安装Ubuntu 18.04 LTS
。我使用了以下命令:
install.packages("rstanarm")
和
devtools::install_github("stan-dev/rstanarm", build_vignettes = FALSE)
都抛出以下错误:
Execution halted
Makevars:17: recipe for target 'stan_files/lm.cc' failed
make: *** [stan_files/lm.cc] Error 1
ERROR: compilation failed for package ‘rstanarm’
sessionInfo
sessionInfo()
R version 3.5.3 (2019-03-11)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 18.04.2 LTS
Matrix products: default
BLAS: /usr/lib/x86_64-linux-gnu/blas/libblas.so.3.7.1
LAPACK: /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.7.1
locale:
[1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C
[3] LC_TIME=en_US.UTF-8 LC_COLLATE=en_US.UTF-8
[5] LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8
[7] LC_PAPER=en_US.UTF-8 LC_NAME=C
[9] LC_ADDRESS=C LC_TELEPHONE=C
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] usethis_1.5.0 devtools_2.0.1
loaded via a namespace (and not attached):
[1] Rcpp_1.0.1 ps_1.3.0 prettyunits_1.0.2 rprojroot_1.3-2
[5] digest_0.6.18 crayon_1.3.4 withr_2.1.2 assertthat_0.2.1
[9] R6_2.4.0 backports_1.1.3 magrittr_1.5 rlang_0.3.4
[13] cli_1.1.0 curl_3.3 fs_1.2.7 remotes_2.0.2
[17] testthat_2.0.1 callr_3.2.0 desc_1.2.0 tools_3.5.3
[21] glue_1.3.1 pkgload_1.0.2 compiler_3.5.3 processx_3.3.0
[25] pkgbuild_1.0.3 sessioninfo_1.1.1 tcltk_3.5.3 memoise_1.1.0
>
答案 0 :(得分:6)
在Ubuntu 18.04 + R 3.5.3上,您可以通过以下方式安装rstanarm
:
sudo add-apt-repository -y "ppa:marutter/rrutter"
sudo add-apt-repository -y "ppa:marutter/c2d4u3.5"
sudo apt update
sudo apt install r-cran-rstanarm
一些有关为什么您以前可能遇到麻烦的背景信息:
对于使用R 3.5.x的用户,适用于Ubuntu的RStan安装指南已经过时。
Ben Goodrich在评论中链接到RStan GitHub Guide to Installing RStan on Linux。他们在那里为Ubuntu提供了以下建议:
# Add marutter's c2d4u repository, (and rrutter for CRAN builds too)
sudo add-apt-repository -y "ppa:marutter/rrutter"
sudo add-apt-repository -y "ppa:marutter/c2d4u"
sudo apt-get update
sudo apt-get install r-cran-rstan
但是,对于较新的R版本,您需要执行以下操作
# Add marutter's c2d4u repository, (and rrutter for CRAN builds too)
sudo add-apt-repository -y "ppa:marutter/rrutter"
sudo add-apt-repository -y "ppa:marutter/c2d4u3.5"
sudo apt-get update
sudo apt-get install r-cran-rstan
这应该可以在Ubuntu 18.04 + R 3.5.3。上为您安装RStan。
答案 1 :(得分:1)
第一次发生此错误并假设您在.RProfile
根目录中有一个R
时,您很可能会在一行中写到:setwd("~/R")
,继续并注释此行并重新启动R
并获得一个新会话,然后再次运行:install.packages("rstanarm")
您应该能够成功安装rstanarm
,不要忘了在启动后取消注释setwd("~/R")
。安装时,发生此错误的原因是rstanarm安装脚本假定工作目录是软件包目录的根目录,而在.Rprofile中调用setwd()
时,情况并非如此
如果您想尝试一下..请删除使用PPA安装的rstanarm