6 redis 编译失败_编译redis6报错/usr/bin/ld: cannot find -latomic解决方法

少环境 --->原文:https://bbs.huaweicloud.com/forum/thread-59424-1-1.html

latomic代表的是 libatomic.so,也即是在编译的过程中,需要libatomic.so库,而系统又找不到这个库;

解决方法是手动找到这个库,可能存在如下几种情况:

1、系统中没有安装依赖库libatomic.so,通过执行yum -y install *atomic*安装相关依赖,安装后执行rpm -qa | grep atomic查看是否安装了相关依赖

2、系统可能已经存在libatomic.so,但是不在默认查找路径(/usr/lib之类的路径),而是在其他路径中。

3、系统中没有libatomic.so这个库,但是找到类似 libatomic.so.1.0 这种带版本号的库,通过执行find / -name "libatomic.so*"来确认

【解决方法】

使用软链接的方法将依赖库libatomic.so链接到正确路径,执行如下命令:

sudo ln -s /usr/lib64/libatomic.so.1.2.0 /usr/lib/libatomic.so

然后再执行make编译即可正常编译通过;


版权声明:本文为weixin_39767121原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。