+ -
当前位置:首页 → 问答吧 → CLFS中三次编译后的gcc的差别是什么呢?

CLFS中三次编译后的gcc的差别是什么呢?

时间:2008-01-12

来源:互联网

请问CLFS中三次编译后的gcc的差别是什么呢?

另外,如果用ldd去查看三次编译后的gcc,那次将显示gcc连接到新的libc呢?

作者: wen   发布时间: 2008-01-12

我的理解是:
第一遍编译,是为了安装:Glibc,它装好后,gcc还指向原系统的Glibc;
所以需要第二遍编译,把gcc和Binutils等工具指向临时的Glibc。
第三遍编译后,把gcc指向新的Glibc。

第二和第三次编译后都指向了新的Glibc。

作者: sofire   发布时间: 2008-01-12

引用:
作者: sofire
我的理解是:
第一遍编译,是为了安装:Glibc,它装好后,gcc还指向原系统的Glibc;
所以需要第二遍编译,把gcc和Binutils等工具指向临时的Glibc。
第三遍编译后,把gcc指向新的Glibc。

第二和第三次编译后都指向了新的Glibc。
这个问题也属于easy而且非Normal的问题?

作者: wen   发布时间: 2008-01-12

CLFS 玩法很多,wen 老师请先说明是用哪种方式吧,要编译三次 gcc,估计是 1.0 或者 SVN 的?

作者: d00m3d   发布时间: 2008-01-12

引用:
作者: d00m3d
CLFS 玩法很多,wen 老师请先说明是用哪种方式吧,要编译三次 gcc,估计是 1.0 或者 SVN 的?
在CLFS的三种方式中,如果把最后系统的完成也算上,1.0应该一共编译了4次gcc,我这里指的是sysroot和embedded方式。

作者: wen   发布时间: 2008-01-13

关於 sysroot 及 embedded 吗,不好意思,不懂!

这方面 youbest 及 不开花 比较在行。

作者: d00m3d   发布时间: 2008-01-13

我从没想过这个问题,也没看过CLFS的东西。属于瞎参与。:)

作者: sofire   发布时间: 2008-01-13

CLFS 泄及架构上的交叉编译,做过一次以後对系统的了解会比单纯 LFS 更深,当然难度更大了,兄弟有了 LFS/BLFS 的经验是值得尝试的

作者: d00m3d   发布时间: 2008-01-13

回楼主,据我理解哈,其实CLFS的核心就是那条交叉编译工具链,工具链的制作过程只编译了2次gcc,第一次编译gcc是为了编译glibc,这次gcc的编译是由host完成的,用的是host的glibc库,第二次编译的gcc就是真正的交叉编译器gcc了,用的是新装的glibc(跟target的glibc是一样的),因为之后用它编译出来的东东都是要在target上用的。第三次编译gcc跟给target安装其他的软件没有区别,如果你的target不需要编译东西的话就没必要装它。当然,如果装了这个gcc的话它肯定用的是target系统里面的glibc

作者: sspipipipi   发布时间: 2008-01-17