开发者社区> 问答> 正文

安装memcached却编译出错

已经安装了libevent

yum install libevent-devel
并且安装了一些编译工具
yum -y install gcc gcc-c++ libstdc++-devel

按照官方提示使用以下安装方法

wget http://memcached.org/latest
tar -zxvf memcached-1.x.x.tar.gz
cd memcached-1.x.x
./configure && make && make test && sudo make install
但当make的时候报错,信息如下:

gcc -std=gnu99 -DHAVE_CONFIG_H -I.    -fprofile-arcs -ftest-coverage -g -O2 -pthread -pthread -Wall -Werror -pedantic -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -MT memcached_debug-slabs.o -MD -MP -MF .deps/memcached_debug-slabs.Tpo -c -o memcached_debug-slabs.o `test -f 'slabs.c' || echo './'`slabs.c
mv -f .deps/memcached_debug-slabs.Tpo .deps/memcached_debug-slabs.Po
gcc -std=gnu99 -DHAVE_CONFIG_H -I.    -fprofile-arcs -ftest-coverage -g -O2 -pthread -pthread -Wall -Werror -pedantic -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -MT memcached_debug-items.o -MD -MP -MF .deps/memcached_debug-items.Tpo -c -o memcached_debug-items.o `test -f 'items.c' || echo './'`items.c
cc1: warnings being treated as errors
items.c: In function ‘crawler_crawl_q’:
items.c:1141: 警告:由于数据类型范围限制,比较结果永远为真
make[2]: *** [memcached_debug-items.o] 错误 1
make[2]: Leaving directory `/tmp/memcached-1.4.24'
make[1]: *** [all-recursive] 错误 1
make[1]: Leaving directory `/tmp/memcached-1.4.24'
make: *** [all] 错误 2
[root@localhost memcached-1.4.24]# 

怎么才能成功安装memcached呢?

展开
收起
a123456678 2016-06-22 14:28:15 3004 0
1 条回答
写回答
取消 提交回答
  • 问题已经解决了,是因为Makefile有-Werror让警告也不通通过编译,修改Makefile把-Werror参数去掉就可以。-Werror的意思是警告即错误,即编译过程中有警告产生就无法编译通过。而memcached的源代码也许写得不够严谨,出警告了。
    感谢@大舒的提点。

    2019-07-17 19:45:31
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载