2017-03-07 273 views
0

我一直试图让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 

无济于事列入

+0

你检查目录:$ JAVA_HOME/include和确保有就是JNI。 h文件存在? –

+0

@DilshodShaymanov是的,它存在 – TheGuyWhoCodes

回答

0

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 
相关问题