[英]How to set `Java headers gen.:` for R (to install `rJava`)
我正在尝试在 Arch Linux 上的 R 中安装包rJava
。
我得到了错误:
configure: error: One or more Java configuration variables are not set.
Make sure R is configured with full Java support (including JDK). Run
R CMD javareconf as root to add Java support to R.
运行sudo R CMD javareconf
,我可以看到Java headers gen.:
未设置,但我无法弄清楚如何设置它。
这是 R 看到的完整 Java 配置(除了Java haders gen.
,其余的在我看来还可以):
Java interpreter : /usr/bin/java
Java version : 10
Java home path : /usr/lib/jvm/java-10-openjdk
Java compiler : /usr/bin/javac
Java headers gen.:
Java archive tool: /usr/bin/jar
我确实在/usr/bin
有javah
。 但是我如何“告诉”这个给 R 呢?
感谢@IvoVidovic 的评论,我去了/usr/bin
并检查了javah
。 原来它是一个不存在的文件的符号链接。 实际上,Arch Linux OpenJDK 10 中缺少javah
(该文件未在 包内容中列出)。
OpenJDK 9
,export JAVA_HOME=/usr/lib/jvm/java-9-openjdk
更新我的JAVA_HOME
,sudo archlinux-java set java-9-openjdk
将 OpenJDK 9 设置为我的默认 jdk,sudo R CMD javareconf
允许 R 找到所有 java 文件,包括javah
。我现在有:
Java interpreter : /usr/bin/java
Java version : 9.0.4
Java home path : /usr/lib/jvm/java-9-openjdk
Java compiler : /usr/bin/javac
Java headers gen.: /usr/bin/javah
Java archive tool: /usr/bin/jar
我可以rJava
地安装rJava
。
再次感谢@IvoVidovic,他的评论使我朝着正确的方向前进。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.