Makefile: Fatal error: jni.h: No such file or directory

Makefile: Fatal error: jni.h: No such file or directory

我正在尝试 make this library 并且我正在按照 Maven 段落中的说明进行操作。但是,我在步骤

上失败了
make clean all

出现以下错误:

ObjectManager.c:35:17: fatal error: jni.h: No such file or directory
#include <jni.h>

因此,根据 this question and this question 的回答,我正在尝试将 jni.h 文件的位置添加到编译器标志。就我而言,此文件位于

/usr/lib/jvm/jdk-8-oracle-arm32-vfp-hflt/include

到目前为止我尝试过的:

make -I/usr/lib/jvm/jdk-8-oracle-arm32-vfp-hflt/include clean all
make -I"${JAVA_HOME}/include" -I"${JAVA_HOME}/include/linux" clean all
export JAVA_INCLUDE_DIR=/usr/lib/jvm/jdk-8-oracle-arm32-vfp-hflt/include

简而言之,none 个建议的解决方案有效,但 makefile 仍然失败并出现相同的错误。如何解决?

这个库已经有了正确的设置[见 CFLAGS]。来自 target/jni 中的 makefile:

IDIR =./include
CC=gcc
CFLAGS=-fPIC -Wall -g -I. -I$(IDIR) -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/linux -I/usr/lib/x86_64-linux-gnu/glib-2.0/include $(shell pkg-config --cflags $(PKGDEPS))

这很可能意味着您的 JAVA_HOME 设置不正确。