红联Linux门户
Linux帮助

Linux下OCCI编程环境的安装

发布时间:2014-10-20 09:36:39来源:linux网站作者:mafuli007

一般情况下OCCI会随着Oracle数据安装,附带安装到某个目录下,不过对于仅仅需要做相关开发的人员来说,

这个动作“太大了”,选择安装即时客户端是一个不错的选择,小巧,便于配置,功能完善(对于应用程序开发来说).

我们只需要到oracle的网站上下载以下几个东西:(http://www.oracle.com/technetwork/topics/linuxsoft-082809.html

Instant client Package - Basic 运行OCI, OCCI, 和JDBC-OCI应用程序需要的所有文件.
Instant client Package - Basic Lite: 只包含英语错误信息, 只支持unicode, ascii, 西欧字符集.
Instant client Package - JDBC Supplement 为jdbc增加了xa, 国际化和RowSet操作
Instant Client Package - SQL *Plus 包含sqlplus和需要的库文件
Instant client Package - SDK 使用Instant Client开发Oracle 应用程序需要的头文件及示例makefile
Instant client package - ODBC 使用odbc时需要的库, 不是所有平台都有. linux平台包含.

其中Basic和Basic Lite两个中必须选一个。这里我选择了:

oracle-instantclient11.1-basic-11.1.0.7.0-1.i386.rpm
oracle-instantclient11.1-devel-11.1.0.7.0-1.i386.rpm
oracle-instantclient11.1-odbc-11.1.0.7.0-1.i386.rpm
oracle-instantclient11.1-sqlplus-11.1.0.7.0-1.i386.rpm


安装过程:


1)、由于自己不太清楚。so 安装顺序,随便来!
rpm -ivh oracle-instantclient11.1-basic-11.1.0.7.0-1.i386.rpm
Preparing...                ########################################### [100%]
1:oracle-instantclient11.########################################### [100%]
rpm -ivh oracle-instantclient11.1-devel-11.1.0.7.0-1.i386.rpm
Preparing...                ########################################### [100%]
1:oracle-instantclient11.########################################### [100%]
rpm -ivh oracle-instantclient11.1-sqlplus-11.1.0.7.0-1.i386.rpm
Preparing...                ########################################### [100%]
1:oracle-instantclient11.########################################### [100%]
rpm -ivh oracle-instantclient11.1-odbc-11.1.0.7.0-1.i386.rpm
Preparing...                ########################################### [100%]
1:oracle-instantclient11.########################################### [100%]


2)、配置环境


1、配置ld.so.conf

vi /etc/ld.so.conf

/usr/lib/oracle/11.1/client/lib/

(至于这个文件干嘛用的,恩等我把《程序员的自我修养》看完都;

注意这里的“11.1”可能是12.1、11.1.0.1 之类的请按照你的/usr/lib/oracle/下的目录名为准)


2、#ldconfig

#ldconfig

ldconfig是一个动态链接库管理命令,主要是在默认搜寻目录(/lib和/usr/lib)以及动态库配置文件/etc/ld.

so.conf内所列的目录下,搜索出可GX的动态链接库(格式如前介绍,lib*.so*),进而创建出动态装入程序(ld.so)

所需的连接和缓存文件.缓存文件默认为 /etc/ld.so.cache,此文件保存已排好序的动态链接库名字列表.

它是程序运行所需的动态连接库的配置文件。


3、make 来试一下

Compile file /root/v2_10ge_probe/brd_gcr/source/GcrModule.cpp,2062 lines ....
In file included from /root/v2_10ge_probe/brd_gcr/source/GcrModule.cpp:18:0:
/root/v2_10ge_probe/brd_gcr/../brd_platform/include/brd_dbo_define.h:29:18: fatal error: occi.h: No such file or directory
compilation terminated.
make: *** [GcrModule.o] Error 1)

真倒霉啊!!


4、配置LD_LIBRARY_PATH

export LD_LIBRARY_PATH=:./lib:../lib:../../lib:/usr/lib/oracle/11.1/client/:/usr/lib/oracle/11.1/client/lib

(汗,原来是MakeFile写错了,#lib使用client64 呵呵呵)