jni.h在cmake linux中没有这样的文件或目录?
问题描述:
我一直试图让OpenCV的为Linux,我用cmake的参数:jni.h在cmake linux中没有这样的文件或目录?
cmake -D CMAKE_BUILD_TYPE=RELEASE -D WITH_OPENCL=OFF -D BUILD_PERF_TESTS=OFF -D BUILD_SHARED_LIBS=OFF -D JAVA_INCLUDE_PATH=$JAVA_HOME/include -D JAVA_AWT_LIBRARY=$JAVA_HOME/jre/lib/amd64/libawt.so -D JAVA_JVM_LIBRARY=$JAVA_HOME/jre/lib/arm/server/libjvm.so -D CMAKE_INSTALL_PREFIX=/usr/local
,它生成的文件的罚款。
就在那时到各地当它被trting生成OpenCV的-JAR它获得OP了
/home/pi/Desktop/opencv-3.1.0/modules/java/generator/src/cpp/common.h:8:17 fatal error jni.h No such file or directory
的81%,所以我不知道要与现在在做什么。 OpenJDK的正确安装过
编辑:我试着用-I标志,通过执行命令
make -I/usr/lib/jvm/java-8-openjdk-armhf/includes
无济于事列入
答
上make(1)
命令-I
标志只影响文件makefile的.include
指令,而不是编译器搜索的目录。为此,只需将-I
标志传递给每个编译。要做到这一点的方法之一是
$ make CFLAGS="-I/usr/lib/jvm/java-8-openjdk-armhf/includes"
,你也可以从环境中通过CFLAGS
,如
$ export CFLAGS=\""-I/usr/lib/..."\" # escaped double quotes make them to be included in the string.
$ make
你检查目录:$ JAVA_HOME/include和确保有就是JNI。 h文件存在? –
@DilshodShaymanov是的,它存在 – TheGuyWhoCodes