【发布时间】:2013-01-25 20:19:47
【问题描述】:
在 Ubuntu 12.04 中,我安装了来自 sun/oracle 的 jdk7。当locate jni.h时,打印多个位置
/usr/lib/jvm/java-6-openjdk-amd64/include/jni.h
/usr/lib/jvm/jdk1.7.0_07/include/jni.h
...
JDK生成的头文件中有include <jni.h>,目前报错
fatal error: jni.h: No such file or directory.
在我的Makefile 中,没有指定jni.h 所在的位置。我问是否可以配置某些系统参数以在编译时知道jni.h(比如/usr/lib/jvm/jdk1.7.0_07/include/jni.h)的路径。
【问题讨论】:
-
将
-I/usr/lib/jvm/jdk1.7.0_07/include添加到编译器标志。 -
jni.h的路径是否有系统配置,所以每次编译都不需要指定编译选项。
-
可能设置
JVM_HOME环境变量并从makefile中引用它(我认为):-I$JVM_HOME/include -
这个问题之后的下一阶段:stackoverflow.com/questions/6804253/…
标签: java java-native-interface classpath