【发布时间】:2015-08-27 08:43:41
【问题描述】:
我正在使用 php 5.3 安装 PDO_INFORMIX。
这是我的配置标志:
'./configure' '--build=x86_64-redhat-linux-gnu' '--host=x86_64-redhat-linux-gnu' '--target=x86_64-redhat-linux-gnu' '--program-prefix=' '--prefix=/usr' '--exec-prefix=/usr' '--bindir=/usr/bin' '--sbindir=/usr/sbin' '--sysconfdir=/etc' '--datadir=/usr/share' '--includedir=/usr/include' '--libdir=/usr/lib64' '--libexecdir=/usr/libexec' '--localstatedir=/var' '--sharedstatedir=/var/lib' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--with-libdir=lib64' '--with-config-file-path=/etc' '--with-config-file-scan-dir=/etc/php.d' '--disable-debug' '--enable-shared' '--disable-rpath' '--without-pear' '--without-bz2' '--with-exec-dir=/usr/bin' '--with-freetype-dir=/usr' '--with-png-dir=/usr' '--with-xpm-dir=/usr' '--enable-gd-native-ttf' '--without-gdbm' '--with-gettext' '--with-gmp' '--with-iconv' '--with-jpeg-dir=/usr' '--with-openssl' '--with-pcre-regex=/usr' '--with-zlib' '--with-layout=GNU' '--enable-exif' '--enable-ftp' '--enable-magic-quotes' '--enable-sysvsem' '--enable-sysvshm' '--enable-sysvmsg' '--enable-ucd-snmp-hack' '--enable-calendar' '--without-sqlite' '--with-libxml-dir=/usr' '--with-xml' '--enable-xml' '--with-system-tzdata' '--with-apxs2=/usr/sbin/apxs' '--without-gd' '--disable-dom' '--disable-dba' '--without-unixODBC' '--enable-pdo' '--enable-xmlreader' '--enable-xmlwriter' '--with-mcrypt=static' '--enable-sqlite3' '--with-sqlite3' '--disable-phar' '--disable-fileinfo' '--enable-json' '--without-pspell' '--enable-wddx=shared' '--with-curl' '--disable-posix' '--disable-sysvmsg' '--disable-sysvshm' '--disable-sysvsem' '--with-pdo-informix=/opt/IBM/informix' '--enable-intl' '--enable-mbstring' '--with-mysql' '--with-mysqli' '--enable-pcntl' '--with-pdo-mysql' '--with-pspell' '--with-libedit' '--with-readline' '--enable-shmop' '--with-snmp' '--enable-soap' '--enable-sockets' '--without-pdo-pgsql' '--with-pdo-dblib' '--with-imap=/usr/local/src/imap-2007e' '--with-imap-ssl'
但经过编译和一些测试后,我发现 PDO_INFORMIX 的源版本错误。他们是 1.3.0 。我得到了正确的版本 - 1.2.6 - 并单独编译了 pdo_informix.so。比我将库放在 ext dir 和我现在拥有的东西..
调用命令:
which -a php
表明我有 2 个 php。在 /usr/bin/php 和 /usr/local/bin/php
调用测试脚本,显示加载的 pdo_informix 版本与 /usr/bin/local/php 我得到了正确的版本 - 1.2.6。但是 /usr/bin/php 的相同测试显示 1.3.0 。更改 php.ini 中的 extension_dir 表明即使他在确切目录中看到 lib,它也已经加载:
PHP Warning: Module 'pdo_informix' already loaded in Unknown on line 0
所以...
找出它为什么使用 1.3.0 版本的正确方法是什么,是否有不重新编译 php 的出路?
【问题讨论】:
标签: php linux compilation libraries