大道至简,知易行难
广阔天地,大有作为

解决形如/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21′ not found的报错

syslinux+buildroot,某程序报错:

经搜索,可以通过如下的方法查看GLBCXX版本:

那么libstdc++跟什么有关呢?

根据官网描述,这个版本信息实际是:

可以看到,当前GLIBCXX支持的最高版本为3.4.20,没有该二进制需要的3.4.21。

这个问题之所以出现,应该是由于buildroot编译时使用的GCC版本低于编译上述二进制代码时的GCC版本所致

修改buildroot的编译选项,将GCC版本提高至5.x,然后重新编译buildroot:

参考文档:
1、https://stackoverflow.com/questions/11176116/how-can-i-know-the-libstdc-shipped-with-each-gcc-version
2、https://gcc.gnu.org/onlinedocs/libstdc++/manual/abi.html
3、https://stackoverflow.com/questions/10354636/how-do-you-find-what-version-of-libstdc-library-is-installed-on-your-linux-mac

转载时请保留出处,违法转载追究到底:进城务工人员小梅 » 解决形如/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21′ not found的报错

分享到:更多 ()

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址