|

楼主 |
发表于 2008-1-11 14:46:51
|
显示全部楼层
Post by tfkdmwmqtr;1805450
look at ' if you are going to boot ' The boot method is needed when you are building on a different architecture. For example, if you are building a
PowerPC system from an x86, you can't chroot. The chroot method is for when you are building on the same
architecture. If you are building on, and for, an x86 system, you can simply chroot. The rule of thumb here is if
the architectures match and you are running the same series kernel you can just chroot. If you aren't running the
same series kernel, or are wanting to run a different ABI, you will need to use the boot option.
对于这段我的理解是如果前面的CLFS-HOST CLFS-TARGET 不都是x86的话 下面的chroot命令就不能执行 只能再在 /tools以及$CLFS下 建立一些启动的必须工具然后把$CLFS下的所有文件打包安装到目标机器上再进行其他软件的编译
很多疑问:
首先,要是host 跟 target结构不同,going to boot 之后根据手册顺序执行,所有的第五部分的9 10两章的软件岂不是都要在目标机器上进行编译,那编译时间非常人能忍受
第二,第七章中going to boot 中已经安装的包(zlib e2fsprogs sysvinit udev etc.) 在第十章中不用再安装了吧?
第三,/tools下面的工具是用/cross-tools下面的工具编译的吧?(猜测,不知道要到什么地方能看到clfs的原理,我现在能理解到的只是/croos-tool下面的编译工具是用宿主机的编译工具编译的; 然后用export PATH=/croos-tools:/bin:/usr/bin 屏蔽了宿主机PATH下的同名工具,再用export CC=$CLFS_TARGET-gcc" 这样的命令设定 building basic tools时使用的编译工具的类型)既然going to boot时编译的工具能在宿主机上直接使用,那为什么不用/cross-tools下的工具直接编译出目标系统的标准文件结构,还要经过building basic tools这个中间过程呢?(going to boot 和 building basic tools 两部分的编译环境是一样的阿,为什么不把/tools 下的basic tools 直接编译到$CLFS中呢?) |
|