我一直在尝试为 linux 制作 opencv,我使用了 cmake 参数:
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
它生成的文件很好。
当它尝试生成它使用的 opencv-jar 时,它进入了大约 81%
/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
所以我不确定现在要用它做什么。 openjdk也安装正确
编辑:我尝试使用 -I 标志,通过执行命令
make -I/usr/lib/jvm/java-8-openjdk-armhf/includes
没用
最佳答案
make(1)
命令上的 -I
标志仅影响由 .include
指令包含在 makefile 中的文件,而不影响编译器搜索的目录。为此,只需将 -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 - jni.h 在 cmake linux 期间没有这样的文件或目录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42657970/