Glibc,GCC,binutils兼容性 [英] Glibc vs GCC vs binutils compatibility

查看:147
本文介绍了Glibc,GCC,binutils兼容性的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

是否存在有关binutils,glibc和GCC之间的版本兼容性的官方文档?我发现此矩阵用于binutils与GCC版本的兼容性.对于GCC和glibc,最好也有这样的东西.

我要问的要点是,我需要知道是否可以构建具有嵌入式" glibc 2.2.4的GCC 4.9.2,以便能够支持相当老的目标,例如CentOS 5. /p>

谢谢.

解决方案

使用这种新版本的gcc构建这种旧版本的glibc的可能性极小. glibc记录了binutils&的最低要求版本. gcc在其安装文件.

glibc-2.23状态:

Recommended Tools for Compilation
GCC 4.7 or newer
GNU 'binutils' 2.22 or later

通常,如果您想更新这些版本,则glibc通常可以与发行时正在开发的gcc版本一起使用.例如glibc-2.23已于2016年2月18日发布,当时正在开发gcc-6,因此glibc-2.23将通过gcc-6与gcc-4.7一起使用.

找到所需的版本的gcc ,然后找到其发行日期,然后在大约同一时间查看 glibc版本.

所有这些,使用旧版本的glibc是一个糟糕的主意.它将充满已知的安全漏洞(包括可远程利用的漏洞).最新的glibc-2.23版本,例如已修复的 CVE-2015-7547 应用程序执行DNS网络解析,并影响以glibc-2.9开头的版本.请记住:这不是潜伏的唯一错误.

Is there a sort of official documentation about version compatibility between binutils, glibc and GCC? I found this matrix for binutils vs GCC version compatibility. It would be good to have something like this for GCC vs glibc as well.

The point I'm asking this for is that I need to know if I can build, say, cross GCC 4.9.2 with "embedded" glibc 2.2.4 to be able to support quite old targets like CentOS 5.

Thank you.

解决方案

it's extremely unlikely you'll be able to build such an old version of glibc with such a new version of gcc. glibc documents the min required version of binutils & gcc in its INSTALL file.

glibc-2.23 states:

Recommended Tools for Compilation
GCC 4.7 or newer
GNU 'binutils' 2.22 or later

typically if you want to go newer than those, glibc will generally work with the version of gcc that was in development at the time of the release. e.g. glibc-2.23 was released 18 Feb 2016 and gcc-6 was under development at that time, so glibc-2.23 will work with gcc-4.7 through gcc-6.

so find the version of gcc you want, then find its release date, then look at the glibc releases from around the same time.

all that said, using an old version of glibc is a terrible idea. it will be full of known security vulnerabilities (include remotely exploitable ones). the latest glibc-2.23 release for example fixed CVE-2015-7547 which affects any application doing DNS network resolution and affects versions starting with glibc-2.9. remember: this is not the only bug lurking.

这篇关于Glibc,GCC,binutils兼容性的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆