1. ホーム
  2. java

[解決済み] jni.hが見つかるようにするには?

2022-02-01 11:45:57

質問内容

Ubuntu 12.04で、sun/oracleのjdk7がインストールされています。この場合 locate jni.h を印刷すると、複数の場所が印刷されます。

/usr/lib/jvm/java-6-openjdk-amd64/include/jni.h
/usr/lib/jvm/jdk1.7.0_07/include/jni.h
...

JDKが生成するヘッダーファイルの中に include <jni.h> というメッセージが表示され、現在では

fatal error: jni.h: No such file or directory.

私の Makefile を実行する場所の指定はありません。 jni.h があります。そして、あるシステムパラメータを設定することで、そのパスが jni.h (例えば /usr/lib/jvm/jdk1.7.0_07/include/jni.h をコンパイル時に知ることができます。

どのように解決するのですか?

コンパイラにインクルードディレクトリの場所を教える必要があります。以下のような感じです。

gcc -I/usr/lib/jvm/jdk1.7.0_07/include

しかし、それはあなたのmakefileに依存します。