分类: C/C++
2010-07-21 00:07:04
|
综合上面的步骤,我们可在操作系统下面依次执行下述命令来完成编译:
db2 connect to stores #链接数据库
db2
prep test1.sqc bindfile #预编译源程序
db2 bind test1.bnd #邦定到数据库
db2
connect reset #断开数据库链接
cc -c -O
-I/sec2/dore2/hdwu/sqllib/include test1.c #编译源文件
cc -O
-L/sec2/dore2/hdwu/sqllib/lib test1.o -o test1 -ldb2 #链接
当然,上面是在命令行上直接一条一条的打命令来实现的,大家一看就知道这样很麻烦.
因此,我们可以将其写到 makefile
文件里,让其自动执行(其实makefile文件的内容归
根结底还是命令,是命令行的集合).因此相应的makefile文件的内容我们可以如下
写:
#makefile
DB2 = db2
CC = cc
CFLAGS = -O
IP1 = /sec2/dore2/hdwu/sqllib/include #包含的头文件路径
LP1 =
/sec2/dore2/hdwu/sqllib/lib #库文件路径
LIB1 = db2 #库名
DATABASE = stores
EXE = test1
SQC = test1.sqc
C = test1.c
BND = test1.bnd
OBJ = test1.o
all : $(EXE)
$(EXE) : $(OBJ)
$(CC) $(CFLAGS) -L$(LP1) $(OBJ) -o $@ -l$(LIB1)
$(OBJ) : $(C)
$(CC) -c $(CFLAGS) -I$(IP1) $(C)
$(C) $(BND) : $(SQC)
$(DB2) connect to $(DATABASE); \
$(DB2)
prep $(SQC) bindfile; \
$(DB2) bind $(BND); \
$(DB2) connect reset
clean :
rm $(C) $(BND) $(OBJ) $(EXE)
好了,关于DB2下makefile文件的编写大概的成分及过程就是这样了,又学到了一点东西.
不过暂时本人还没有测试过.等测试之后的具
体情况在告诉大家.