免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1989 | 回复: 0

[C] 对编译oci时链接的动态库的总结 [复制链接]

论坛徽章:
0
发表于 2009-06-10 22:40 |显示全部楼层
近日,做了一个oracle7.3.4版本的交互的oci程序,由于oci7和oci8以上函数差距很大,且oracle7的环境很难找到,给任务的完成带来了很大的困难。
经过对$ORACLE_HOME/rdbms/demo的研究,还是找到很多差异。首先讲讲链接库的不同
在Oracle8以上可以用-lclntsh来链接库文件
但是Oracle7上可能没有libclntsh.so文件
经过分析
添加如下红色部分内容在Makefile文件中可以不指定-lclntsh

include ${ORACLE_HOME}/rdbms/lib/env_rdbms.mk
#---------------------------- make变量定义------------------------------
SRCDIR = .
INCDIR = ../include
MYLIBDIR = ../shlib
OCIDIR=${ORACLE_HOME}/lib

NO_INCPATH = -I${SRCDIR} -I${INCDIR} \
             -I${ORACLE_HOME}/rdbms/public\
             -I${ORACLE_HOME}/rdbms/demo

BINLOC_DBTEST_LIB =  \
  $(LIBCLIENT) $(DEVTTLIBS) $(LLIBCORE)\
  -lc


编译时加上BINLOC_DBTEST_LIB动态库就行了
http://blog.chinaunix.net/u/28499/showart_1960836.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP