在Ubuntu上从CRAN安装lme4

12

我在Ubuntu 18.04上安装CRAN的lme4包时遇到了问题。我在R 3.4.4上运行install.packages("lme4")并收到以下错误:

ERROR: configuration failed for package ‘nloptr’
* removing ‘/home/peter/R/x86_64-pc-linux-gnu-library/3.4/nloptr’
ERROR: dependency ‘nloptr’ is not available for package ‘lme4’
* removing ‘/home/peter/R/x86_64-pc-linux-gnu-library/3.4/lme4’

仔细观察,我看到了这两行错误:

libtool: link: ERROR: no information for variable 'AR' cru .libs/libutil.a .libs/mt19937ar.o .libs/sobolseq.o .libs/timer.o .libs/stop.o .libs/redblack.o .libs/qsort_r.o .libs/rescale.o

checking for ranlib... ERROR: no information for variable 'RANLIB'

但是,在我的电脑上,arranlib命令都可以工作。造成这些错误的原因可能是什么?


我正在与相同的问题苦苦挣扎。您找到解决方法了吗?当我尝试从R而不是R Studio安装lme4包时,它会说c++编译器不起作用;现在我正在猜测错误指的是哪个编译器。 - Ben Bolker
你尝试过按照 CRAN 上 Ubuntu 的说明安装二进制版本的软件包吗?链接:https://cran.r-project.org/bin/linux/ubuntu/README.html - Ben Bolker
PS https://launchpad.net/~marutter/+archive/ubuntu/c2d4u 有适用于 R < 3.5 的二进制包,但除非您需要早期版本,否则安装更近期的 R 版本可能更值得(您可以通过上一条评论中的链接轻松完成)。 - Ben Bolker
根据我的经验,在Ubuntu 22.04上使用R 4.2.2时,我们缺少nlopt,可以在终端中通过sudo apt-get install libnlopt-dev来解决。然后就可以编译了。 - Quar
2个回答

20

您只需安装较旧版本的nloptr包。

例如:

packageurl<-"https://cran.r-project.org/src/contrib/Archive/nloptr/nloptr_1.2.1.tar.gz"

install.packages(packageurl, repos=NULL, type="source")

我猜你正在使用R 3.X版本。这种错误是由于软件包更新以支持R 4.0所导致的。


4
这对我很有用。install.packages(packageurl, repos=NULL, type="source");``` 注:以上为R语言代码,内容为安装nloptr(非线性优化包)的指令。 - mmoisse
2
@mmoisse 谢谢!我正在处理一个使用 R 3.5.1 的工作机器上的 bug,而您的评论帮了我大忙 :) - ialm

-2

终于我找到了答案。我在Ubuntu 18.04中安装ggpubr包时遇到了困难。这个答案解决了依赖问题。


当前您的回答不够清晰。请[编辑]以添加更多细节,帮助他人理解如何回答问题。您可以在帮助中心查找有关编写高质量答案的更多信息。 - Community

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