当我使用pylibmc时出现了一个问题。当我“导入pylibmc”时,我会得到一些错误,如下所示:
符号: /usr/local/python2.6/lib/python2.6/site-packages/_pylibmc.so:未定义符号: ImportError: memcached_server_list。
我的环境是Python 2.6.5,libmemcached 0.39,memcached 1.4.5
那么,我该如何解决它呢?
非常感谢。
更新1:我再次阅读pylibmc文档,发现了这个: libmemcached 0.32或更高版本(上次测试是0.38)。然后我来了,也许我的libmemcached太新,无法使用。
更新2:我测试了libmemcached 0.38,在_pylibmc.so: Undefined symbol: memcached_server_count中有另一个错误。
发布于 2010-04-18 06:14:29
关于符号memcached_server_list似乎有些混淆: libmemcached 0.38公开了它,但0.39不公开它。这个符号甚至已经从文档中删除了。pylibmc的get_stats()方法依赖于memcached_server_list。我怀疑pylibmc应该改用memcached_server_cursor。
所以我认为我们可以说pylibmc1.0需要libmemcached <= 0.38。
发布于 2010-04-11 02:39:44
听起来像是链接器问题。这是在什么系统上?_pylibmc.so是如何链接到libmemcached.so的?您能提供构建阶段运行的命令,或许还可以提供ldd输出吗?
发布于 2010-04-12 13:27:40
我也遇到了同样的问题,我通过使用libmemcached 0.34并将环境变量LD_LIBRARY_PATH设置为/usr/local/lib (存储libmemcache库的位置)来解决这个问题。
https://stackoverflow.com/questions/2612515
复制相似问题