2

我在 Ubuntu 12.04 上从源代码编译了 PHP 5.4.8。PHP 驻留在自定义目录中。

我编译了 memcache-2.2.7,最后得到了一个 memcache.so 扩展。

我修改了我的php.ini并添加了:

extension=/jusr/php5/ext/memcache.so

但是当我在 CLI 上运行测试脚本时出现错误:

PHP Warning:  PHP Startup: Unable to load dynamic library '/jusr/php5/ext/memcache.so' - /jusr/php5/ext/memcache.so: undefined symbol: executor_globals in Unknown on line 0

怎么了?

4

2 回答 2

4

我其实已经想通了。大多数“指南”不会告诉您,您需要将 memcache 与 PHP 安装中的 php-config 文件链接起来。

cd /home/user/memcache-2.2.7
phpize --clean && phpize
./configure --with-php-config=/path/to/php/bin/php-config
make
make install

这就是你如何将 memcache 与 PHP 链接起来。我无法在任何地方得到这个。

于 2012-10-20T16:10:02.230 回答
0

(来自 bugs.php.net)

您使用错误的 PHP 标头构建了库。请确保您系统中的 phpize 和 php-config 与您正在使用的 PHP 版本一起提供。

https://bugs.php.net/bug.php?id=57263

于 2012-10-20T16:14:03.667 回答