在Linux下编译Oracle的ProC的问题
OS是Fedora Core release 4 (Stentz),在当前目录下有一个XXX.mk和一个XXX.pc文件,
用make编译:
[oracle@localhost src]$ make -f XXX.mk
XXX.o
cc -c -Aa -g -I/u01/app/oracle/10.2.0/db_1/precomp/public XXX.c
<command line>:1:2: error: missing '(' after predicate
make: *** [XXX.o] Error 1
总是报这个错,但是在HP Unix下都是通过的,是不是在Linux下要做些什么修改?
请哪位大侠给指点一下.
XXX.mk的内容:
#include $(ORACLE_HOME)/precomp/lib/env_precomp.mk
# <83>R<83>}<83><93><83>h
CC = cc
RM = rm -f
CP = cp -p
AR = ar -r
PROC = proc
EXE = exec
MV = mv
# CC <83>I<83>v<83>V<83><87><83><93>
#CCOPT = +DA2.0W -Aa -g -D_HPUX_SOURCE -D_PROTOTYPES
#CCOPT = -Aa -g -DDEBUG -DERROR +DD64
#<8f>a<8a>C<97>p<82>E32bit
#CCOPT = -Aa -g +DD64
CCOPT = -Aa -g
# <83>f<83>B<83><8c><83>N<83>g<83><8a><90>Y<92>e[
BASEDIR = $(HOME)/batch/w/wha
BINDIR = $(BASEDIR)/bin/c
INCDIR = $(BASEDIR)/inc
LIBDIR = $(BASEDIR)/lib
SRCDIR = $(BASEDIR)/src/Whabtmm017B01
COMDIR = $(BASEDIR)/src/Whamm000B01
ORAINC = $(ORACLE_HOME)/precomp/public
# -L
ORACLE_LIBS = -L$(ORACLE_HOME)/lib\
-lclntsh
LIBS = -L/lib/hpux64
#-I
INCDIR = $(HOME)/tk/inc
INCLUDES = -I$(ORACLE_HOME)/precomp/public
#PROCFLAGS = include=$(INCDIR) sqlcheck=semantics
PROCFLAGS = include=$(INCDIR) sqlcheck=semantics userid=wha/wha
OBJS = Whabtmm017B01.o\
$(COMDIR)/src/Whamm000B01.o
SRCS = Whabtmm017B01.c
# exe
Whabtmm017B01.exe : $(OBJS)
@echo "Whabtmm017B01.exe"
$(CC) $(CCOPT) -o $@ $(OBJS) $(LIBS) $(ORACLE_LIBS) $(INCLUDES) -lm
$(MV) $@ $(BINDIR)/Whabtmm017B01.exe
$(CC) $(CCOPT) -o $@ $(OBJS) $(LIBS) $(ORACLE_LIBS) $(INCLUDES) -lm
$(RM) *.o
# cc
Whabtmm017B01.o : Whabtmm017B01.c
@echo "Whabtmm017B01.o"
$(CC) -c $(CCOPT) $(INCLUDES) Whabtmm017B01.c
# $(RM) Whabtmm017B01.lis
$(COMDIR)/src/Whamm000B01.o : $(COMDIR)/src/Whamm000B01.c
@echo "$(COMDIR)/src/Whamm000B01.o $(CC) -c $(CCOPT) $(INCLUDES) $(COMDIR)/src/Whamm000B01.c"
$(CC) -c $(CCOPT) $(INCLUDES) $(COMDIR)/src/Whamm000B01.c
# $(RM) Whabtmm000B01.lis
# proc
Whabtmm017B01.c : Whabtmm017B01.pc
@echo "Whabtmm017B01.c"
$(PROC) $(INCLUDES) $(PROCFLAGS) iname=Whabtmm017B01.pc
clean:
@echo "Cleaning ..."
rm -i -f $(OBJS) Whabtmm017B01.c *.lis Whabtmm017B01.exe core *.cod *.cud *.dcl *.old *.jis
@echo "done!"
用make编译:
[oracle@localhost src]$ make -f XXX.mk
XXX.o
cc -c -Aa -g -I/u01/app/oracle/10.2.0/db_1/precomp/public XXX.c
<command line>:1:2: error: missing '(' after predicate
make: *** [XXX.o] Error 1
总是报这个错,但是在HP Unix下都是通过的,是不是在Linux下要做些什么修改?
请哪位大侠给指点一下.
XXX.mk的内容:
#include $(ORACLE_HOME)/precomp/lib/env_precomp.mk
# <83>R<83>}<83><93><83>h
CC = cc
RM = rm -f
CP = cp -p
AR = ar -r
PROC = proc
EXE = exec
MV = mv
# CC <83>I<83>v<83>V<83><87><83><93>
#CCOPT = +DA2.0W -Aa -g -D_HPUX_SOURCE -D_PROTOTYPES
#CCOPT = -Aa -g -DDEBUG -DERROR +DD64
#<8f>a<8a>C<97>p<82>E32bit
#CCOPT = -Aa -g +DD64
CCOPT = -Aa -g
# <83>f<83>B<83><8c><83>N<83>g<83><8a><90>Y<92>e[
BASEDIR = $(HOME)/batch/w/wha
BINDIR = $(BASEDIR)/bin/c
INCDIR = $(BASEDIR)/inc
LIBDIR = $(BASEDIR)/lib
SRCDIR = $(BASEDIR)/src/Whabtmm017B01
COMDIR = $(BASEDIR)/src/Whamm000B01
ORAINC = $(ORACLE_HOME)/precomp/public
# -L
ORACLE_LIBS = -L$(ORACLE_HOME)/lib\
-lclntsh
LIBS = -L/lib/hpux64
#-I
INCDIR = $(HOME)/tk/inc
INCLUDES = -I$(ORACLE_HOME)/precomp/public
#PROCFLAGS = include=$(INCDIR) sqlcheck=semantics
PROCFLAGS = include=$(INCDIR) sqlcheck=semantics userid=wha/wha
OBJS = Whabtmm017B01.o\
$(COMDIR)/src/Whamm000B01.o
SRCS = Whabtmm017B01.c
# exe
Whabtmm017B01.exe : $(OBJS)
@echo "Whabtmm017B01.exe"
$(CC) $(CCOPT) -o $@ $(OBJS) $(LIBS) $(ORACLE_LIBS) $(INCLUDES) -lm
$(MV) $@ $(BINDIR)/Whabtmm017B01.exe
$(CC) $(CCOPT) -o $@ $(OBJS) $(LIBS) $(ORACLE_LIBS) $(INCLUDES) -lm
$(RM) *.o
# cc
Whabtmm017B01.o : Whabtmm017B01.c
@echo "Whabtmm017B01.o"
$(CC) -c $(CCOPT) $(INCLUDES) Whabtmm017B01.c
# $(RM) Whabtmm017B01.lis
$(COMDIR)/src/Whamm000B01.o : $(COMDIR)/src/Whamm000B01.c
@echo "$(COMDIR)/src/Whamm000B01.o $(CC) -c $(CCOPT) $(INCLUDES) $(COMDIR)/src/Whamm000B01.c"
$(CC) -c $(CCOPT) $(INCLUDES) $(COMDIR)/src/Whamm000B01.c
# $(RM) Whabtmm000B01.lis
# proc
Whabtmm017B01.c : Whabtmm017B01.pc
@echo "Whabtmm017B01.c"
$(PROC) $(INCLUDES) $(PROCFLAGS) iname=Whabtmm017B01.pc
clean:
@echo "Cleaning ..."
rm -i -f $(OBJS) Whabtmm017B01.c *.lis Whabtmm017B01.exe core *.cod *.cud *.dcl *.old *.jis
@echo "done!"
...全文
相关推荐
proc 连接数据库问题及解决方案
prco 连接oracle数据库出现问题及解决方案
c中连接oracle的proc编程
在c代码中连接oracle数据库进行数据库编程,文档中介绍proc编程的测试环境搭建,用户环境变量设置,测试脚本程序,测试代码,注意事项等
oracle linux7.2 安装oracle 11.2.0.4全过程图文附各种bug解决方案
自己安装过程,摸索了整整10天,呕心沥血,应该涵盖了所有oracle linux安装 oracle 11g的解决方案,再不懂的话下载完后加我微信MPaularbear单问吧,力所能及协助
linux下oracle10g安装手册
Oracle 10gR2并没有过份要求操作系统的版本,但本人强烈建议使用Linux AS4以上版本,因为在低版本的操作系统上安装Oracle 10gR2,可能会遇上很多意外的问题,没必要为这些意外的问题浪费时间。 安装前的准备 设置oracle数据库的运行环境
linux下安装ORACLE操作手册
linux下安装ORACLE操作手册,linux下安装ORACLE操作手册linux下安装ORACLE操作手册linux下安装ORACLE操作手册linux下安装ORACLE操作手册


