由于我安装了最新版本的Ubuntu(20.04), R(4.02)无效。如果我尝试从终端启动R,则会收到以下消息:
Logger.log()
经过互联网上的一些研究,我发现我有Libreadline6和8,但没有7,所以我手动安装了它。
R-4.0.2/bin/exec/R: error while loading shared libraries: libreadline.so.7: cannot open shared object file: No such file or directory
所以现在我确实拥有R所需的版本,但是当我尝试运行它时,却得到了完全相同的错误消息。 我什至不知道朝哪个方向寻找解决方案,我认为R并不是问题,但Ubuntu却没有问题。任何想法可能是什么问题? 谢谢!
答案 0 :(得分:1)
首先,您是从哪里获得R包的?
多亏了Michael Rutter基于我维护的Debian软件包构建的东西,我正在CRAN上运行“官方” Ubuntu“ backport”。那里没有问题,对我和我成千上万的其他人来说都没有。让我们检查一下:
$ dpkg -s r-base-core | grep Version
Version: 4.0.2-1.2004.0
$
$ dpkg -s r-base-core | grep readline
Depends: zip, unzip, [...edited...] , libreadline8 (>= 6.0), [...ditto...]
$
因此该版本是针对libreadline8而不是针对7构建的。那么,为什么/如何拥有7?
也许对您来说升级到我这里的二进制文件最容易?有关更多信息,请参见the usual README at CRAN。
第二,即使您使用了较旧的R(例如20.04附带的R),libreadline作为另一个软件包的依存关系也无法卸载。
那么也许您自己编译了软件包?在这种情况下,apt
不知道/usr/local/bin
中的二进制文件具有依赖性,因为您不在软件包管理系统之内!同样,最容易使用预制二进制文件。