【发布时间】:2011-12-30 18:12:04
【问题描述】:
我正在尝试加载 PECL solr 扩展。我已经尝试使用“pecl install solr”并通过下载和使用“phpize/configure/make”来安装它。在这两种情况下,扩展安装都没有错误,但是在 apache 重新启动后(或在命令行上运行 php 时)总是会发出此错误消息:
PHP Warning: Unable to load dynamic library /usr/lib64/php/modules/solr.so
- /usr/lib64/php/modules/solr.so: undefined symbol:
curl_easy_getinfo in Unknown on line 0
我检查了一下,似乎创建的 solr.so 对象不知道 /usr/lib64/libcurl.so,即使我指定了 LDFLAGS -L/usr/lib64(尽管我不需要):
# ldd modules/solr.so
linux-vdso.so.1 => (0x00007fffd5af8000)
libc.so.6 => /lib64/libc.so.6 (0x00007fac573c0000)
/lib64/ld-linux-x86-64.so.2 (0x00000034bc000000)
我正在使用开箱即用的 Fedora 15 安装。我已经安装了许多其他 PECL 扩展,没有任何问题。为什么这么难,更重要的是,我该如何解决?!?
我正在使用 FC15、PHP 5.3.8、curl 7.21.3。提前感谢您的帮助!
【问题讨论】:
-
有插件吗?或者,/usr/lib64/php/modules/solr.so 真的存在并且有正确的权限吗?
-
在运行有关本地构建的 solr.so 的“make test”时,我收到了类似的消息,所以我认为这无关紧要。但是,是的,它存在并且与其他对象具有相同的权限。你说的“是插件”是什么意思?
-
“是插件吗”..a Jocj,HD 向抱怨计算机无法工作的用户提出的第一个问题。首先我们清楚最明显的原因...现在,您最近升级了 PHP,您的 phpize 版本是否正确?
-
这是一个开箱即用的 Fedora Core 15 安装,已修补到软件更新程序修补到的任何位置。我会假设 phpize 是正确的版本,但是如何检查呢?