|
|

楼主 |
发表于 2005-5-30 18:02:38
|
显示全部楼层
我自己研究了很久,问题也想明白不少,但是还是有些问题不是很清楚,比如:
LFS 6中5.7和5.8中使用的是5.5中编译出来的gcc工具,但是此时并没有调整工具链即没有调整头文件和库文件,ld工具依然是宿主操作系统的?对吗?
大家分析lfs时可以考虑以下几个方面:
1、 交叉编译工具链的生成
2、 几次gcc编译器和ld工具的真正使用对象的转变:
3、 几次ld工具的调整,主要是针对gcc的spec文件中ld-linux.so.2文件的位置,更深层次的话,其实是和binutils包中的ld工具编译配置时的LIB_PATH参数有关,在5.4中LIB_PATH=/tools/lib,但是此时并没有及时调整工具链,到了5.9中通过安装新的ld工具和修改ld-linux.so.2的位置完成了第一次工具链调整,之后运行的程序,动态载入的动态链接库都将是/tools/lib下的。6.12中通过调整ld-linux.so.2文件的位置,即重新安装了binutils中的ld工具将LIB_PATH指为了LIB_PATH=/usr/lib:/lib。
4、 注意每次binutils工具中ld工具编译配置的参数LIB_PATH。 |
|