CLFS的一点疑问
时间:2007-12-27
来源:互联网
作者: sspipipipi 发布时间: 2007-12-27
作者: d00m3d 发布时间: 2007-12-27
作者: sspipipipi 发布时间: 2007-12-27
作者: sspipipipi 发布时间: 2007-12-27
x86_64以及x86( i386 / i486 / i586 / i686 ) 是不能 chroot 到 MIPS 中的,MIPS也不能 chroot 到 x86 或 x86_64 中。
能否 chroot 不仅与内核有关,还与软件有关,能否 chroot 还要看软件环境是否支持。
if you are going to chroot 和 if you are going to boot的区别,是 CLFS 区别于 LFS 的重大特点之一。
手册中讲到是选择 if you are going to chroot 还是选择 if you are going to boot ,要看临时编译环境完成后测试 /tools/lib/libc.so.6 和 /tools/bin/gcc -v 的输出是否正常,如果没有显示 libc 和 gcc 的版本信息,如果是报错,就不能使用 if you are going to chroot 。这时,应该考虑到是不是你的目标系统架构与你的主系统架构不兼容。比如 内核是 i686 的,想要做的系统是 x86_64 的。这样,只有当你将主系统的内核换为 x86_64 之后,才能支持目标系统的 x86_64 。也就是说内核和系统软件要兼容,如果系统软件编译的是 MIPS 的就超出了 x86 以及 x86_64 所能支持的范围,就不能 chroot 了。
如果你的内核支持目标系统,就可以用 chroot 的方法。比如 x86_64 内核是支持 x86_64 / i686 / i586 / i486 / i386 的。
否则,用 if you are going to boot 的方法。比如当前系统是 x86 ,目标系统是 MIPS ,那还需要有 MIPS 的处理器或者MIPS模拟环境。
另外,建议楼主用 svn 的。 特别是,如果硬件很新,旧内核不一定都能支持。比如,linux-2.6.18.x 的内核不能支持我的笔记本的网卡。而 2.6.22.6 或 更新的都能支持得更好。
如果你用 lfslivecd 来做,想用 chroot 的方法构建 64位系统,在启动 lfslivecd 的时候用 64 位的内核。
32位适合办公、娱乐、学习用。64位多媒体弱一些。
作者: tfkdmwmqtr 发布时间: 2007-12-27
BTW,晨晨那家伙去哪了?
作者: d00m3d 发布时间: 2007-12-28
作者: sspipipipi 发布时间: 2007-12-28
Warning
Here a temporary cross-compiled kernel will be built. When configuring it, select the minimal amount of options required to boot the target machine and build the final system. I.e., no support for sound, printers, etc. will be needed.
Also, try to avoid the use of modules if possible, and don't use the resulting kernel image for production systems.
我不太明白为什么交叉编译的内核不能作为最终的目标板系统内核,按理说应该可以才对呀。而且,交叉工具链如果能编译出内核,又为什么不能将其他的软件也交叉编译了呢,这样的话系统不就一步到位了吗?CLFS手册没有这样做,它在第V部分装完基本软件后重新编译了内核。这样的话,我觉得交叉编译就变的没什么意义了,因为最后的系统实际上还是按照LFS的路子做出来的,而交叉编译出来的东西在这里也就充当了一次LFS的liveCD的角色。
作者: sspipipipi 发布时间: 2007-12-28
作者: sspipipipi 发布时间: 2007-12-28
软件好不好用,要真实的用过才知道。如果我没有 64 位的处理器,也不能模拟64位的环境,编译出 64 位的软件是无意义的。
如果我现在有一台 MIPS ,但是我手上只有 x86 的 Linux 系统,我可以在 x86 的机器上编译出 MIPS 的基础软件和内核,将编译好的开发工具拿到 MIPS 机器 的硬盘上就可以继续制作 MIPS 的系统了。
作者: tfkdmwmqtr 发布时间: 2007-12-28
LZ需要的是clfs-sysroot,需要使用--with-sysroot参数;正如楼上大侠所说
如果我现在有一台 MIPS ,但是我手上只有 x86 的 Linux 系统,我可以在 x86 的机器上编译出 MIPS 的基础软件和内核,将编译好的开发工具拿到 MIPS 机器 的硬盘上就可以继续制作 MIPS 的系统了。 |
作者: 不开花 发布时间: 2007-12-29
clfs-sysroot的方法的确可行。只是在做完之后能有那台机器验证一下就更好了。
我的机器是 x86_64 的,用 x86 做 64位或 x86_64 做 x86 感觉没有挑战性。
龙芯网站上的那个模拟器不知道行不行,我看了是 .rar 的就没解包过。也不知道 Linux 中能用不。
作者: tfkdmwmqtr 发布时间: 2007-12-29
作者: tfkdmwmqtr
感谢龙芯版主提醒。
clfs-sysroot的方法的确可行。只是在做完之后能有那台机器验证一下就更好了。 我的机器是 x86_64 的,用 x86 做 64位或 x86_64 做 x86 感觉没有挑战性。 龙芯网站上的那个模拟器不知道行不行,我看了是 .rar 的就没解包过。也不知道 Linux 中能用不。 |
作者: 不开花 发布时间: 2007-12-29
作者: sspipipipi 发布时间: 2007-12-29
作者: sspipipipi
我是linux新手,接触linux3个月,问问各位大侠,clfs-sysroot是什么啊。
|
http://cross-lfs.org/view/clfs-sysroot/
虽然,这里并没有 MIPS , 但方法是一样的。
如果为了 x86 或 x86_64 ,就没有必要了, lfslivecd-x86-xxx.iso 就能办到了。
接触 linux 时间不长,也是可以 LFS 的。坚持等于成功,只要方法正确。多看下本版 精华区 ,不懂的问题多多搜索通常能够有答案,实在没办法了就提问。
CLFS 的各种版本都在这里了:
http://cross-lfs.org/view
http://cross-lfs.org/files
作者: tfkdmwmqtr 发布时间: 2007-12-29
其实说白了1.0.0根本就没有CLFS成功,建议大家别用了。
谢谢楼上的提供的地址啊!
作者: sspipipipi 发布时间: 2007-12-29
作者: sspipipipi 发布时间: 2007-12-29
作者: sspipipipi 发布时间: 2007-12-29
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28