2011-09-18 31 views
1

我遵循java.sun.com的示例來構建jni應用程序示例,但我遇到了問題。我打算使用gcc使用unix。如何使用本地函數編譯* .c文件以創建庫?我應該使用什麼參數?有很多,我很困惑。如何構建基本的JNI應用程序?

+0

對不起:我誤解了你的問題。我假設你正在尋找JNI教程中保存的信息,而不是C編譯器的參數。降低投票數並刪除投票。我還添加了GCC標籤,部分原因是它與GCC有關,但主要是我可以編輯您的帖子,然後能夠更改我的投票。再次,對不起。 –

回答

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 [email protected] $< 
+0

我應該把它放在我的項目文件夾中?並將其命名爲'makefile'? –

+0

我弄錯了錯誤:user @ user:〜/ jni/hello $ make makefile:16:***缺少分隔符。停止。 –

相關問題