无法在Ubuntu 18.04 LTS上安装rstanarm

时间:2019-04-10 11:42:06

标签: r installation ubuntu-18.04 stan rstanarm

我无法在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    
> 

2 个答案:

答案 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