java — jni.h: такого файла или директории нет в chroot ubuntu

В make-файле путь указан так:

 JAVA_HOME=/srv/schroot/precise_i386/usr/java

INCLUDES=-I$(JAVA_HOME)/include/ -I. -I/usr/include/freetype2/

CFLAGS=-ansi -fomit-frame-pointer -fno-strength-reduce -g -Wall -DLINUX=1 $(INCLUDES)mytarget.o:
$(CC) $(CFLAGS) -c mytarget.cpp -o mytarget.o

Но когда я компилирую код, я получаю jni.h: такого файла или каталога нет.
Я также попытался дать полный путь к jni.h в коде:

 #include </srv/chroot/precise_i386/usr/java/include/jni.h>

тоже не работает.
Я уверен, что файл jni.h есть.

Кто-нибудь знает почему? Благодарю.

LJ

0

Решение

Я не могу сказать вам, почему это не сработает, вы должны сделать несколько тестов.
что-то вроде этого:

mytarget.o:
ls -l $(JAVA_HOME)
$(CC) $(CFLAGS) -c mytarget.cpp -o mytarget.o

Теперь проверьте, правильно ли работает ls, если нет, может, какая-то орфографическая ошибка в пути? или не сопоставленная сетевая файловая система? если это работает, продолжайте включать:

ls -l $JAVA_HOME/include

и, наконец, в файл

ls -l $JAVA_HOME/include/jni.h

Если все ls работают и все еще не могут найти заголовок, это действительно странно.

РЕДАКТИРОВАТЬВы также должны попробовать:

#include "jni.h"

вместо:

#include <jni.h>
0

Другие решения