在 Anaconda 中安装 RStudio 时出错:`/opt/anaconda3/lib/R/bin/exec/R: 加载共享库时出错:libreadline.so.6:

在 Anaconda 中安装 RStudio 时出错:`/opt/anaconda3/lib/R/bin/exec/R: 加载共享库时出错:libreadline.so.6:

我目前正在尝试安装 Anacondas RStudio 版本。我已经从官方CRAN 存储库通过 apt 包管理器和最新版本的 RStudio。我当前版本的 R 安装在 中/usr/lib/R,路径变量设置在 中/usr/bin/R。运行 Anaconda Navigator 的 RStudio 安装程序时,它会尝试在 中安装单独版本的 R。/opt/anaconda3/lib/R安装过程挂起,现在我无法在终端中输入 R 并打开“旧”R 版本。相反,我收到以下错误消息:

$ R
/opt/anaconda3/lib/R/bin/exec/R: error while loading shared libraries: libreadline.so.6: cannot open shared object file: No such file or directory

我尝试更新“旧” R 的路径变量,但由于在路径列表中/opt/anaconda3/bin先于它,usr/bin我仍然收到相同的错误:

$ export PATH=$PATH:/usr/bin/R
$ echo $PATH
/opt/anaconda3/bin:/opt/anaconda3/condabin:/home/username/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/mplusdemo:/usr/bin/R

首先,我不确定这个错误是什么意思。这是什么libreadline.so.6?我该如何解决这个问题?

其次,我是否需要并且建议通过 Anaconda 安装 R?我当前的版本是从 CRAN 存储库更新的,这意味着当更新可用时我会获得更新。相反,Anacondas 版本有多新?或者,创建指向 目录的符号链接是否usr/bin/R明智/opt/anaconda3/bin

答案1

libreadline.so.6任何官方的 deb 包都没有提供这个库Ubuntu 存储库,只有 Debian Jessie 有为它打包。如果您想保存 Anaconda - 使用以下命令手动安装此库

cd ~/Downloads
wget -c wget http://ftp.debian.org/debian/pool/main/r/readline6/libreadline6_6.3-8+b3_amd64.deb
wget -c http://ftp.debian.org/debian/pool/main/g/glibc/multiarch-support_2.19-18+deb8u10_amd64.deb
sudo apt install ./libreadline6_6.3-8+b3_amd64.deb  ./multiarch-support_2.19-18+deb8u10_amd64.deb

然后重试从 Anaconda 启动 R。

更新如下。

1. 修复库问题

安装libreadline.so.6删除了 OP 的错误信息,但导致了第二个错误:

$ /opt/anaconda3/lib/R/bin/R
/opt/anaconda3/lib/R/bin/exec/R: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory

此错误已由安装缺少的库

sudo add-apt-repository universe
sudo apt-get install libncurses5

这删除了错误消息,现在可以从终端运行 Anaconda 的 R 版本。

$ /opt/anaconda3/lib/R/bin/R
R version 3.2.2 (2015-08-14) -- "Fire Safety"

但它并没有解决 RStudio 安装挂起的问题。这似乎与没有先创建 R 环境。 下列的本教程至此,RStudio的安装就完成了。

2. 从 Anaconda Navigator 运行最新版本的 R 和 RStudio

安装后,很明显 Anaconda 的 R 和 RStudio 版本都相当过时。我发现最好从其官方存储库下载并更新:

cd ~/Downloads
wget -c https://download1.rstudio.org/desktop/bionic/amd64/rstudio-1.4.1717-amd64.deb
sudo apt-get install ./rstudio-1.4.1717-amd64.deb

重新创建 CRAN 版本的 R 的路径只需/opt/anaconda3/bin/R从路径中删除符号链接即可。

sudo rm /opt/anaconda3/bin/R

至于在 Anaconda 中运行最新版本的 RStudio(已经预先安装),只需从 Anaconda 的 RStudio 目录中删除现有的符号链接,然后创建一个指向“旧”安装目录的新符号链接即可:

sudo rm /opt/anaconda3/envs/renv/bin/rstudio
ln -s /usr/lib/rstudio/bin/rstudio /opt/anaconda3/envs/renv/bin/rstudio 

这最后一步可以从 Anaconda 运行最新版本的 R 和 RStudio。

相关内容