(是的,我也会在askUbuntu论坛上搜索)。
问题:在升级之前,在Ubuntu14.04下,我刚刚安装了默认的JRE和JDK,而R 3.0.2(Ubuntu的默认版本)已成功运行R CMD javareconf
。
但是,由于升级到14.10,并且验证我有最新的java7 JRE和JDK,尝试运行javareconf
会失败并显示以下转储:
cellocgw@cellocgw-Studio-1747:~$ sudo R CMD javareconf
Java interpreter : /usr/bin/java
Java version : 1.7.0_65
Java home path : /usr/lib/jvm/java-7-openjdk-amd64/jre
Java compiler : /usr/bin/javac
Java headers gen.: /usr/bin/javah
Java archive tool: /usr/bin/jar
trying to compile and link a JNI progam
detected JNI cpp flags : -I$(JAVA_HOME)/../include
detected JNI linker flags : -L$(JAVA_HOME)/lib/amd64/server -ljvm
gcc -std=gnu99 -I/usr/share/R/include -DNDEBUG -I/usr/lib/jvm/java-7-openjdk-amd64/jre/../include -fpic -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -g -c conftest.c -o conftest.o
In file included from conftest.c:1:0:
/usr/lib/jvm/java-7-openjdk-amd64/jre/../include/jni.h:39:19: fatal error: stdio.h: No such file or directory
#include <stdio.h>
^
compilation terminated.
/usr/lib/R/etc/Makeconf:133: recipe for target 'conftest.o' failed
make: *** [conftest.o] Error 1
Unable to compile a JNI program
JAVA_HOME : /usr/lib/jvm/java-7-openjdk-amd64/jre
Java library path:
JNI cpp flags :
JNI linker flags :
Updating Java configuration in /usr/lib/R
Done.
某些东西没有安装或者不在哪里&#34;应该&#34;是。我已尝试过在类似问题中列出的大多数技巧(进行更新等),但到目前为止,我还没有找到错误信息中缺少stdio.h
文件的问题。
答案 0 :(得分:2)
我想我已经解决了这个问题:
根据我在crossposting的steeldriver的评论,我挖掘了软件中心并为gcc
安装添加了几个“附加组件”。我怀疑添加libc6-dev
或gcc-multilib
是我需要的。
关于R
想要安装JGR
的用户可能感兴趣的相关说明:我必须安装libpng12-dev
,libpng3
和{{}中的至少一个1}}要安装libpng++dev
包png
},这是R
安装所必需的。