Ubuntu 20.04 上缺少 libreadline.so.7,不再工作
R is missing libreadline.so.7 on Ubuntu 20.04, doesn't work anymore
因为我安装了最新版本的 Ubuntu (20.04),
R (4.02) 只是行不通。如果我尝试从终端启动 R,我会收到以下消息:
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
在网上查了一下,我发现我有 Libreadline6 和 8,但没有 7,所以我手动安装了它。
apt policy libreadline7
libreadline7:i386:
Installé : 7.0-3
Candidat : 7.0-3
Table de version :
*** 7.0-3 100
100 /var/lib/dpkg/status
所以现在我确实有 R 需要的版本,但是当我尝试 运行 它时,我得到了完全相同的错误消息。
我什至不知道在哪个方向寻找解决方案,我认为这不是 R 的问题,而是 Ubuntu... 知道可能是什么问题吗?
谢谢!
第一件事:你从哪里得到你的 R 包?
我是 运行 CRAN 的“官方”Ubuntu“向后移植”,这要归功于 Michael Rutter 基于我维护的 Debian 软件包构建的内容。那里没有问题,对我和我成千上万的其他人来说都不是。让我们检查一下:
$ 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 附带的那个),libreadline 作为另一个包的依赖项也不会卸载。
所以也许你自己编译了这个包?在这种情况下 apt
不知道 /usr/local/bin
中的二进制文件具有依赖关系 因为您在包管理系统之外!同样,最容易使用 pre-made 二进制文件。
因为我安装了最新版本的 Ubuntu (20.04), R (4.02) 只是行不通。如果我尝试从终端启动 R,我会收到以下消息:
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
在网上查了一下,我发现我有 Libreadline6 和 8,但没有 7,所以我手动安装了它。
apt policy libreadline7
libreadline7:i386:
Installé : 7.0-3
Candidat : 7.0-3
Table de version :
*** 7.0-3 100
100 /var/lib/dpkg/status
所以现在我确实有 R 需要的版本,但是当我尝试 运行 它时,我得到了完全相同的错误消息。 我什至不知道在哪个方向寻找解决方案,我认为这不是 R 的问题,而是 Ubuntu... 知道可能是什么问题吗? 谢谢!
第一件事:你从哪里得到你的 R 包?
我是 运行 CRAN 的“官方”Ubuntu“向后移植”,这要归功于 Michael Rutter 基于我维护的 Debian 软件包构建的内容。那里没有问题,对我和我成千上万的其他人来说都不是。让我们检查一下:
$ 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 附带的那个),libreadline 作为另一个包的依赖项也不会卸载。
所以也许你自己编译了这个包?在这种情况下 apt
不知道 /usr/local/bin
中的二进制文件具有依赖关系 因为您在包管理系统之外!同样,最容易使用 pre-made 二进制文件。