makefile很好写的,我们做项目的时候一般都是写makefile。
下面给你一个简单的例子,不过我是在unix上编译的,我写的是.ec文件例如itest.ec,所以这里我用esql编译,如果你的.c程序用cc编译
/**************makefile******************/
.SUFFIXES: .c .o .ec .o
.ec.o:
esql -c $*.ec
-rm $*.c
.c.o:
cc -c $*.c
OBJ=itest.o
itest: $(OBJ)
esql -o $@ $(OBJ)
mv -f $@ ${HOME}/bin
clean:
rm -f *.o
/******************************************/
.ec.o:
esql -c $*.ec
-rm $*.c
.c.o:
cc -c $*.c
这两个是编译规则,*.ec用esql编译,*.c用cc编译
OBJ=itest.o
itest: $(OBJ)
esql -o $@ $(OBJ)
mv -f $@ ${HOME}/bin
编译OBJ并把执行码移到bin目录下面
如果你的OBJ包含多个文件可以写成:
OBJ=itest.o itest1.o itest2.o
上面只是一个很简单的例子,好多时候再编译时候还要包含好多库的,你在编译OBJ时把相应的库加进去就可以了。当然我们也可以编译成一个静态库或者动态库。