glibc相关

gcc和glibc的关系:https://www.cnblogs.com/jiqiubo/archive/2011/08/03/2126117.html

总的来说glibc就是一个最基础的库,但是它比较特别和核心,有些情况不能用库的方式来处理。

centos更新glibc有可能会有问题。

因此,如果你想要把 新glibc参与编译的程序,放到老glibc的系统中跑,一般的解决方式是:

1. 用docker,docker中的系统和glibc是新的

2. 原理同上,把机器的系统升级,glibc也是新的

3. 把源代码,放到老的glibc环境中编译。一般这种情况,机器和系统也是对应老的,没有办法说gcc是新的,glibc是老的。

 

有问题的操作:

1. 静态链接,glibc在有些使用情况下不能静态链接

2. 单独升级glibc。有可能broken系统。glibc需要和整个系统一起升级

 

其他参考:

https://stackoverflow.com/questions/4032373/linking-against-an-old-version-of-libc-to-provide-greater-application-coverage

 https://www.lightofdawn.org/wiki/wiki.cgi/NewAppsOnOldGlibc

posted @ 2022-04-19 16:37  xuyv  阅读(103)  评论(0)    收藏  举报