Makefile: фатальная ошибка: jni.h: нет такого файла или каталога - PullRequest
0 голосов
/ 02 октября 2018

Я пытаюсь make этой библиотеки , и я следую инструкциям в Maven параграфе.Однако на шаге

make clean all

произойдет ошибка со следующей ошибкой:

ObjectManager.c: 35: 17: фатальная ошибка: jni.h: такого файла или каталога нет
#include <jni.h>

Итак, следующие ответы на этот вопрос и на этот вопрос Я пытаюсь добавить местоположение файла 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

Короче говоря, ни одно из предложенных решений не сработало, и makefile все равно не работает с той же ошибкой.Как это решить?

1 Ответ

0 голосов
/ 03 октября 2018

Эта библиотека уже имеет правильные настройки [см. CFLAGS].Из его make-файла в target / jni:

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 установлен неправильно.

...