免费注册 查看新帖 |

Chinaunix

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

如何在linux环境下配置pro*c程序预编译参数 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-06-08 18:22 |只看该作者 |倒序浏览

如何在linux环境下配置pro*c程序预编译参数
操作系统:
    红帽子Linux 2.4.21-4.EL
数据库:oracle10g
配置步骤:
   1,在$HOME下建立一个etc目录,在此目录下简历一个配置文件Make.defines文件,编辑该文件,写入以下内容:
include $(ORACLE_HOME)/precomp/lib/env_precomp.mk
PROC=proc
GCC=gcc
BINDIR=$(HOME)/bin
#oracle的include目录
ORAIFLAG=-I$(ORACLE_HOME)/rdbms/public -I$(ORACLE_HOME)/rdbms/demo -I$(ORACLE_HOME)/precomp/public -I$(ORACLE_HOME)/plsql/public
#oracle的库文件路径
ORALFLAG=-L$(ORACLE_HOME)/lib -L$(ORACLE_HOME)/precomp/lib -L$(ORACLE_HOME)/rdbms/lib -L$(ORACLE_HOME)/sqlplus/lib -L$(ORACLE_HOME)/network/lib -L$(ORACLE_HOME)/plsql/lib
IFLAG=-I$(HOME)/include $(ORAIFLAG)
LFLAG=-L$(HOME)/lib $(ORALFLAG) -lclntsh
PROCFLAGS=char_map=string
.SUFFIXES: .pc .c .o
.pc.c:
        $(PROC) $(PROCFLAGS) iname=$*
        rm *.lis
.pc.o:
        $(PROC) $(PROCFLAGS) iname=$*
        rm *.lis
        $(GCC) $(IFLAG) -c $*.c
.c.o:
        $(GCC) $(IFLAG) -c $*.c

2,确保.bash_profile文件中有如下环境变量配置:
   export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib
3,在自己的makefile文件中第一行写入如下语句:
include $(HOME)/etc/Make.defines
  其他的makefile书写方式不变。
例子:
   我有一个源程序test.pc,我的makefile文件内容如下:
   include $(HOME)/etc/Make.defines
all:test
test:test.o
        $(GCC) $? -o $@ $(LFLAG)
        rm ./tp* ./*.c ./*.o
编译时执行:make test
产生test可执行程序。
作者注:以上配置方法跟作者的的程序组织习惯有关(一般将通用的编译参数放在一个文件中,具体的makefile文件再将这个定义包含进去)。总之在makefile文件内将以上提到的语句均写入即可。


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/31935/showart_317757.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP