【发布时间】:2015-07-10 00:44:45
【问题描述】:
我正在尝试通过 pecl 安装 ibm_db2:
pecl install ibm_db2
然后当它要求安装目录时,我尝试了不同的地方,但结果相同。它经过一堆检查等,然后尝试“制作”并得到一个错误:
/usr/bin/ld: skipping incompatible /home/db2inst1/sqllib/lib32//libdb2.so when searching for -ldb2
/usr/bin/ld: cannot find -ldb2
它总是在那里寻找库。它们存在,因为当我执行时:
locate libdb2.so
它显示:
/opt/ibm/db2/V10.1/lib32/libdb2.so
/opt/ibm/db2/V10.1/lib32/libdb2.so.1
/opt/ibm/db2/V10.1/lib64/libdb2.so
/opt/ibm/db2/V10.1/lib64/libdb2.so.1
但它们在 /opt/ibm 中。
我正在查看此链接:pecl instal ibm_db2 fails,这似乎与标头/库配置不正确有关?
我目前正在运行 RHEL 6.6。
【问题讨论】:
-
看起来您可能正在尝试构建 ibm_db2 的 64 位版本,而您的 DB2 实例是 32 位。你的操作系统位数是多少?
/home/db2inst1/sqllib/lib指向哪里? -
认为这已解决:我正在使用 php,并且在我的 php.ini 文件中包含一些(看似无关的)扩展,这些扩展会导致问题。注释掉这些扩展并安装 ibm_db2 的“开发”版本似乎已经解决了这个问题。但是,还有一些我需要安装失败的库的情况,所以我会在 php.ini 周围做更多的挖掘......