libmemcached安装undefined reference to `__sync_fetch_and_add_4'

本文记录了在安装libmemcached过程中遇到的链接错误,详细描述了错误信息,并提供了解决方案,即通过配置禁用64位支持并指定编译标志来修正未定义符号的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

安装libmemcached安装时出错:
----------------------------------------------------------------------------------------------------------
CC clients/ms_stats.o
CC clients/ms_task.o
CC clients/ms_thread.o
CCLD clients/memslap
clients/ms_conn.o: In function `ms_get_

udp_request_id':
/var/go2packages/libmemcached-0.37/clients/ms_conn.c:184: undefined reference to `__sync_fetch_and_add_4'
clients/ms_conn.o: In function `ms_reconn_socks':
/var/go2packages/libmemcached-0.37/clients/ms_conn.c:1055: undefined reference to `__sync_fetch_and_add_4'
clients/ms_conn.o: In function `ms_reconn':
/var/go2packages/libmemcached-0.37/clients/ms_conn.c:924: undefined reference to `__sync_fetch_and_add_4'
/var/go2packages/libmemcached-0.37/clients/ms_conn.c:960: undefined reference to `__sync_fetch_and_add_4'
clients/ms_thread.o: In function `ms_setup_thread':
/var/go2packages/libmemcached-0.37/clients/ms_thread.c:215: undefined reference to `__sync_fetch_and_add_4'
clients/ms_thread.o:/var/go2packages/libmemcached-0.37/clients/ms_thread.c:198: more undefined references to `__sync_fetch_and_add_4' follow
collect2: ld returned 1 exit status
make[2]: *** [clients/memslap] Error 1
make[2]: Leaving directory `/var/go2packages/libmemcached-0.37'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/go2packages/libmemcached-0.37'
make: *** [all] Error 2

--------------------------------------------------------------------------------------------------------------------------
解决方法:

./configure --disable-64bit CFLAGS="-O3 -march=i686"

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值