首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >libmemcached问题

libmemcached问题
EN

Stack Overflow用户
提问于 2010-09-19 09:19:30
回答 3查看 4.2K关注 0票数 0

当我在我的ubuntu上运行libmemcached示例代码时,它给我一个错误"undefined reference to `memcached_create'",有人能帮助我吗?谢谢

代码语言:javascript
复制
#include <libmemcached/memcached.h>

int main(int argc, char **argv) {  
  //memcached_servers_parse (char *server_strings); 
  memcached_server_st *servers = NULL;
  memcached_st *memc;
  memcached_return rc;
  char *key= "keystring";
  char *value= "keyvalue";

  memc= memcached_create(NULL);
  servers= memcached_server_list_append(servers, "localhost", 11211, &rc);   rc= memcached_server_push(memc, servers);

  if (rc == MEMCACHED_SUCCESS)
    fprintf(stderr,"Added server successfully\n");   else
    fprintf(stderr,"Couldn't add server: %s\n",memcached_strerror(memc, rc));

  rc= memcached_set(memc, key, strlen(key), value, strlen(value), (time_t)0, (uint32_t)0);

  if (rc == MEMCACHED_SUCCESS)
    fprintf(stderr,"Key stored successfully\n");   else
    fprintf(stderr,"Couldn't store key: %s\n",memcached_strerror(memc, rc));

  return 0;

}
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-09-19 09:26:37

-lmemcached传给GCC。这会告诉它链接到libmemcached.so共享库。

票数 3
EN

Stack Overflow用户

发布于 2011-01-31 19:58:16

当我构建这个库(libmemcached)时,它只构建静态库,而当我链接我的程序时(上面提到的),它会给我

代码语言:javascript
复制
$ gcc MyMemClient.c  -o MyMemClient -L/usr/local/lib/libmemcached.a
/tmp/ccQEXVjv.o:MyMemClient.c:(.text+0x1f): undefined reference to `_memcached_create'
/tmp/ccQEXVjv.o:MyMemClient.c:(.text+0x58): undefined reference to `_memcached_server_list_append'
//ccQEXVjv.o:MyMemClient.c:(text+0x6d): undefined reference to `_memcached_server_push'
/tmp/ccQEXVjv.o:MyMemClient.c:(.text+0xc1): undefined reference to `_memcached_strerror'
/tmpccQEXVjv.o:MyMemClient.c:(.text+0x12a): undefined reference to `_memcached_set'
/tmp/ccQEXVjv.o:MyMemClient.c:(.text+0x170): undefined reference to `_memcached_strerror'
/tmp/ccQEXVjv.o:MyMemClient.c:(.text+0x199): undefined reference to `_memcached_server_free'
//ccQEXVjv.o:MyMemClient.c:(.text+0x1a4): undefined reference to `_memcached_free'
ld returned 1 exit status
票数 0
EN

Stack Overflow用户

发布于 2011-11-21 12:04:55

打开你的终端并切换到你的libmemcached目录,这是你的C项目,右击并选择“uncompressed.

  • type ./configure

  • type make

  • in”。在“链接器”中添加“libmemcached.so).

”库,并记得添加“库”目录(指向您的目录的链接包含libmemcached.so

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3744156

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档