我已经有一个虚拟服务器运行opensuse 11.4,带有apache、php、oracle实例化客户端和通过pecl安装的oci。
我在11.4上安装和运行它所采取的步骤是:
# Install instantclient
rpm -Uvh oracle-instantclient11.2-basic-11.2.0.2.0.x86_64.rpm
rpm -Uvh oracle-instantclient11.2-devel-11.2.0.2.0.x86_64.rpm
# Install OCI8 through pecl
pecl install oci8
# add oci8 to modules
vi /etc/php5/conf.d/oci8.ini
extension=oci8.so
# add LD_LIBRARY_PATH to apache
vi /etc/sysconfig/apache2
# add to bottom of script
export LD_LIBRARY_PATH="/usr/lib/oracle/11.2/client64/lib"
# restart Apache
/etc/init.d/apache2 restart在OpenSUSE 12.1的新安装上庆祝相同的过程会导致apache在启动时抛出以下消息:
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib64/php5/extensions/oci8.so' - libnnz11.so: cannot open shared object file: No such file or directory in Unknown on line 0
我无法得到任何解释,为什么它为11.4工作,在12.1,它停止工作。
谁能帮我指出正确的方向吗。
发布于 2012-11-08 18:40:33
我在openSUSE 12.1上也遇到了同样的问题,但我确实从来源安装了oci8。我为php5做了从openSUSE到obs (开放构建服务)的供应商更改:
openSUSE --> obs://build.opensuse.org/server:php随着php从5.3.8升级到5.3.17 wich,厂商的改变也成为了一个不错的特性。然后为libnnz11创建了一个符号链接(看起来环境变量不适用于我):
ln -s /usr/lib/oracle/11.2/client/lib/libnnz11.so /usr/lib/libnnz11.so现在,扩展已经被认可,并且运行良好。如果想尝试由错误生成的config.m4文件中包含的修补程序,就会报告一个带有此问题的phpize,但这对我来说不管用。
https://serverfault.com/questions/360835
复制相似问题