InfoQ

交流

讨论:装了Oracle8.1.6客户端,PHP怎么编译不了支持OCI8和Oracle呢?

作者 lxh2002 发布于 2003-08-02 分类:php基础编程

我在A机器上安装了Oracle8.1.6服务器。
B机器是RedLinux9.0,安装了Oracle8.1.6客户端且安装时
选择了定制安装,然后选中了所有的组件。安装完后,
配置PHP,编译时加了如下的参数(其它省略):
--with-oracle=/oracle/product/8.1.6
--with-oci8=/oracle/product/8.1.6
环境变量也正确的设置了,因为Net8配置我已经连通了
A机的数据库服务器。但编译PHP时得到如下提示:

Oracle-OCI8 needed libraries not found

去除--with-oci8后也得到类似的提示,编译无法进行下去。
这究竟是怎么回事啊,哥哥姐姐帮帮我吧!
愁眉苦脸的说:(



逛论坛交流装了Oracle8.1.6客户端,PHP怎么编译不了支持OCI8和Oracle呢?

加入书签
digg+,
reddit+,
del.icio.us+,
dzone+

2 条回复

回复

经过反反复复的试验(不下十遍Oracle安.. 发表人 lxh2002 发表于 08月25日
原来我在Redhat9中强行安装了7.3版本的.. 发表人 lxh2002 发表于 08月25日
  1. 经过反反复复的试验(不下十遍Oracle安装,换了两个版本(8.1.7,8.1.6)都不行,原以为是Oracle没有拷贝完全文件
    ,好在我早留有几个重要文件),仔细检查PHP安装目录下
    面的configure文件,里面有这几行:
    ...
    elif test -f $OCI8_DIR/lib/libclntsh.$SHLIB_SUFFIX_NAME.8.0 then
    $OCI8_VERSION=8.1
    .....
    else{
    echo "configure: error: Oracle-OCI8 needed libraries not found ...."
    ...

    所以我才知道这里缺的是一个共享文件,名字为
    libclntsh.so.8.0
    经过分析,我把这个文件拷贝到$ORACLE_HOME/lib下面,重新
    编译PHP,后来一切顺利!!

  2. 原来我在Redhat9中强行安装了7.3版本的compat*.rpm包(因为
    Oracle8i要求有glibc6.2.1系列兼容包的支持。

    后来,我将Redhat9中的所有以compat开头的包全部强行删除:
    rpm -e compat* --nodeps
    然后再找到Redhat9的安装光盘,以“升级”的方式安装软件,
    选中所有以compat开头的软件包(之后会提示依赖一个libtcl名
    字的包,默认会安装上去),安装结束之后,我再删除前面的
    Oracle8i安装文件,重新Oracle安装,就再也没有出现任何错误
    信息。PHP也能正确的和Oracle及OCI8编译了。

    我总结了安装Oracle、PHP的如下几点应特别注意事项:
    1、环境变量设置(vi /home/oracle/.bash_profile)
    export LD_ASSUME_KERNEL=2.2.5
    export ORACLE_BASE=/oracle
    export ORACLE_HOME=$ORACLE_BASE/product/8.1.7
    export NLS_LANGUAGE=AMERICAN
    export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
    export TNS_ADMIN=$ORACLE_HOME/network/admin
    export PATH=$PATHORACLE_HOME/bin
    #export ORACLE_SID=dnsdb
    unset LANG

    这里的LD_ASSUME_KERNEL好像只能为2.2.5,我改为Redhat9
    内核的版本号就无法运行runInstaller程序;LANG必须要unset掉,
    否则安装界面的文字全部重叠到一起去了。

    2、一定只能安装Redhat9自带的compat*.rpm软件包。当我安装
    Redhat7.3带的这些包时,就出现了上面古里古怪问题。




  3. 我有话要讲:(可以匿名发表, 发广告的有多远请滚多远!!!)

    昵称: 请输入验证码:


抢着回答

怎么建立表之间的关联?

请问怎么在两张表之间建立关联,如通过用户名来关联?

荒郊野地,居然……

北京php程序员俱乐部

在北京成立一个php俱乐部,或者每月来一次见面会。有兴趣的在这里...

.

没什么,耍流氓! ╭∩╮(︶︵︶)╭∩╮

关于photoshop 7.0的故障,请指点~~~~~...

我用的PHOTOSHOP 7。0打开一个自己作的黑白图后,随便修改。操作...

关于MYsql

我用 DBManager 管理MYSQL时,在里面输入SQL语句,为什么关键字在换...

求助

我现在有两个文件夹 每个文件夹存放若干文件且文件名对应相等 ...

怎样知道在线人数,非注册用户?

怎样知道在线人数,非注册用户? 怎样判断一个用户活动

{$var} 这样写变量对不对?

?:confused: :confused: :blowzy: 跟 $var 等价吗/

有没有关于Mysql数据库 read锁和write锁...

目前碰到一个数据库操作的问题,知道的朋友指导一下。

[]