在Ubuntu上使用R,尝试安装一个依赖于GMP C库的库,但它无法找到GMP,但我已经安装了GMP。

37

我想安装 R 的 Rmpfr 库,所以我在 R 中输入以下命令:

install.packages("Rmpfr")

这个软件包需要安装GMP C库,可以在Ubuntu终端上输入以下命令进行安装

此包需要安装GMP C库,Ubuntu中可通过在终端上键入以下命令进行安装。

sudo apt-get install libgmp-dev

因此,在尝试在R中安装Rmpfr库后,我收到了一个包含错误信息的错误提示。

configure: error: GNU MP not found, or not 4.1.4 or up, see http://gmplib.org

问题是,我已经安装了GNU MP,而它的版本是5.1.2。所以,可能是我的问题。

有任何提示吗?:-) 谢谢!


1
Ubuntu 的哪个版本?我刚刚使用 Saucy 安装了。另外,您是否已安装最新版本的 libmpfr-dev? - James King
你可以手动运行 ./configure 并检查 config.log 以查看实际失败的原因。 - Vincent Zoonekynd
1
我使用Saucy。我有libmpfr-dev的3.1.1-2版本,这是最新的版本。 - Celso
我首先在 R GMP 包上运行了 ./configure,然后 config.log 返回了以下内容:configure:534: 检查 -lgmp 中是否存在 __gmpz_ui_sub
configure:553: cc -o conftest -I/usr/local/include -L/usr/local/lib conftest.c -lgmp 1>&5
/usr/bin/ld: 找不到 crt1.o:没有那个文件或目录
/usr/bin/ld: 找不到 crti.o:没有那个文件或目录
/usr/bin/ld: 找不到 -lc
/usr/bin/ld: 找不到 crtn.o:没有那个文件或目录
- Celso
collect2: 错误:ld 返回了 1 个退出状态 configure: 失败的程序是: #line 542 "configure" #include "confdefs.h" - Celso
2个回答

80
在我的情况下,问题是通过安装 libgmp3-dev 来解决的。
$ sudo apt-get update
$ sudo apt-get install libgmp3-dev

8
是的,这个选项对我也起作用了。我无法想象没有stackoverflow的生活。 - Chamberlain Mbah
5
如果你正在使用CentOS操作系统,可以通过执行sudo yum install gmp-devel命令来安装gmp-devel。 - Marius
@Marius 这对于 Fedora 也适用。 (对于一些人来说可能很明显,但并非所有人都知道) - nonameable
2
解决方案适用于Ubuntu 20.04。为什么它不能被接受? - kdarras

2
安装了build-essentiallibboost后,代码就能够工作了。我的系统有些缺失。:-)

安装 build-essential 就足以解决我的问题。谢谢! - Steve

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接