0

我按照 java.sun.com 中的示例构建示例 jni 应用程序,但我遇到了问题。我打算将 unix 与 gcc 一起使用。如何使用本机函数编​​译 *.c 文件以获得库?我会使用什么参数?有很多,我很困惑。

4

1 回答 1

1

我使用以下makefile进行编译。只需make从命令行键入。

TARGET = myagent
CC = gcc

# linux config
JDK = /usr/local/share/jdk1.6.0_20
CFLAGS=-Wall -I$(IDIR) -shared -DLINUX -I$(JDK)/include/linux -I$(JDK)/include


COMPILE = $(CC) $(CFLAGS) -c
OBJDIR = obj
SOURCES := $(wildcard *.c)
DEPS := $(wildcard *.h)
OBJFILES := $(addprefix $(OBJDIR)/, $(patsubst %.c, %.o, $(SOURCES)))

exe: $(OBJFILES)
    $(CC) $(OBJFILES) -shared -o $(TARGET)

$(OBJDIR)/%.o : %.c $(DEPS)
$(COMPILE) -o $@ $<
于 2011-09-18T15:26:06.300 回答