【发布时间】:2020-11-08 01:13:29
【问题描述】:
我尝试在 C 中运行带有一些库的旧 java 程序。在运行 make 命令时,我一直遇到这个错误,我认为它与 JAVA_HOME setting 有关
swig/main_6_comp_wrap.c:154:10:
fatal error: jni.h: No such file or directory
#include <jni.h>
^~~~~~~
在多次尝试使用 Homebrew 安装 JDK、swig 和 gcc 后,都没有成功。我很确定 jni.h 文件位于 JAVA_HOME 的包含文件夹中。
JAVA_HOME = /Library/Java/JavaVirtualMachines/jdk1.8.0_261.jdk/Contents/Home/
JDK_HOME = $(JAVA_HOME)
JRE_HOME = $(JAVA_HOME)
SWIG = swig
CC = gcc
CFLAGS = -O2 -fno-strict-aliasing -Wall -fno-common \
-I/System/Library/Frameworks/JavaVM.framework/Headers/
BUILDLIB = gcc -shared
LIB6 = java/classes/libC6_comp_backend.jnilib
LIB21 = java/classes/libC21_comp_backend.jnilib
系统:MacOS Catalina 10.15.7 痛饮:3.0.12 gcc: 10.2.0
【问题讨论】:
-
您找到解决方案了吗?
标签: gcc makefile swig java-home