xiaoming728

xiaoming728

编译redis6报错/usr/bin/ld: cannot find -latomic解决方法

2023-12-11
编译redis6报错/usr/bin/ld: cannot find -latomic解决方法

来源:博客园-天妖姥爷

日期:2020-07-26 14:25

链接:https://www.cnblogs.com/mafy/p/13380332.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编译即可正常编译通过;

相关资料:

https://bbs.huaweicloud.com/forum/thread-59424-1-1.html