背景
因为项目编译报错:没有定义的引用 “[email protected]”
初步怀疑glibc版本不匹配。
ldd --version
查看glibc版本,发现是2.27,果然不匹配
root@9d26c3d:/lib/x86_64-linux-gnu# ldd --version
ldd (Ubuntu GLIBC 2.27-3ubuntu1.6) 2.27
Copyright (C) 2018 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Written by Roland McGrath and Ulrich Drepper.
root@9d26c3d53c8b:/lib/x86_64-linux-gnu#
解决办法:升级glibc到2.29
参考链接1:https://blog.csdn.net/u010953692/article/details/130106219
参考链接2: https://zhuanlan.zhihu.com/p/549870561
链接1中 软连接libc.so.6的操作慎用!!!
本人就是使用了此方法,有个这篇笔记~~
修复“修改libc.so.6之后很多命令不可使用”
修改libc.so.6之后,有可能会出现如下问题:
解决办法:
千万不要关掉你的终端(包括SSH)
cd /lib/x86_64-linux-gnu
LD_PRELOAD=/lib/x86_64-linux-gnu/libc-2.27.so ln -sf /lib/x86_64-linux-gnu/libc-2.27.so libc.so.6
注意:上述命令里的libc-2.27是我系统自带的版本,可以根据自己的系统版本而选择相应的替换
现在应该恢复正常了:
然后,继续解决我的编译问题…