免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3222 | 回复: 0
打印 上一主题 下一主题

makefile问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-01-05 09:29 |只看该作者 |倒序浏览
#---------------------------------------------------------
#oracle 有关变量定义 开始

PROCPLSFLAGS=userid=jisco/ccad369@fmesdb sqlcheck=SEMANTICS MODE=ORACLE DBMS=V8 UNSAFE_NULL=YES  PARSE=NONE
ORA_CLIENT_LIB=shared

LIB_HOME=$(ORACLE_HOME)/lib -lclntsh
ORA_INCLUDE=include=$(ORACLE_HOME)/precomp/public include=$(ORACLE_HOME)/rdbms/public include=$(ORACLE_HOME)/rdbms/demo include=$(ORACLE_HOME)/plsql/public include=$(ORACLE_HOME)/network/public

INCLUDE= -I$(ORACLE_HOME)/precomp/public -I$(ORACLE_HOME)/precomp/public -I$(ORACLE_HOME)/rdbms/public -I$(ORACLE_HOME)/rdbms/demo -I$(ORACLE_HOME)/plsql/public

ORACLE_LIB=-L$(ORACLE_HOME)/lib32 -lclntsh -lclntst9 -lsql9 -lm

DEBUGFLAGS=-DDEBUG

BITFLAG=

CFLAGS=-c

SYSLIBS=-lpthread
SYSLIBS1=-L$(LIB_HOME) $(PROLDLIBS)

#proc预编译器
ESQL=proc

.SUFFIXES:        .dbc .pc .c .o

#oracle 有关变量定义 结束
#-----------------------------------------------------------------------
CC=cc
LD=$(CC)

#编译连接选项
LINK_OPT=

COMPILE_OPT=

#目录
BIN=/jgComWork/bin

LIBDS=

OBJS=./jgList.o \\
    ./jgL2INFO.o \\
    ./jgComSock.o \\
    ./jgComPacket.o \\
    ./jgComManager.o \\
    ./jgPublic.o \\
    ./jgComDB.o \\
    ./jgComWork.o


all: jgComWork
       
jgComWork: $(OBJS) $(LIBDS)
        $(LD) $(LINK_OPT) -o $(BIN)/$@  $(OBJS) $(LIBDS) $(ORACLE_LIB)

./jgComDB.o:
        $(ESQL) $(PROCPLSFLAGS) $(ORA_INCLUDE) iname=jgComDB.dbc
        $(CC) $(CFLAGS)  -DDB_ORACLE -DOS_HPUX -o $@ $(INCLUDE) jgComDB.c
        rm jgComDB.c
       
./jgList.o: jgList.c jgList.h
        $(CC) -c -o $@ $(COMPILE_OPT) jgList.c

./jgL2INFO.o: jgL2INFO.c jgL2INFO.h
        $(CC) -c -o $@ $(COMPILE_OPT) jgL2INFO.c

./jgComSock.o: jgComSock.c jgComSock.h
        $(CC) -c -o $@ $(COMPILE_OPT) jgComSock.c

./jgComPacket.o: jgComPacket.c jgComPacket.h
        $(CC) -c -o $@ $(COMPILE_OPT) jgComPacket.c

./jgComManager.o: jgComManager.c jgComManager.h
        $(CC) -c -o $@ $(COMPILE_OPT) jgComManager.c

./jgPublic.o: jgPublic.c public.h
        $(CC) -c -o $@ $(COMPILE_OPT) jgPublic.c
       
./jgComWork.o:  jgComWork.c
        $(CC) -c -o $@ $(COMPLIE_OPT) jgComWork.c

clean:
        rm -f jgComDB.c *.lis *.o


问题:
目录是
BIN=/jgComWork/bin生成的jgComWork文件不能执行,此时跟生成.o文件不在同一目录下

目录改为是
BIN=/jgComWork生成的jgComWork文件能执行,此时生成.o文件在同一个目录下
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP