LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1544|回复: 15

大家好,有试过在x86平台(AMD64运行于32位模式)下LFS一个x86_64的吗?

[复制链接]
发表于 2005-3-25 16:01:00 | 显示全部楼层 |阅读模式
这种做法要注意什么问题?什么时候生成x86代码,什么时候生成x86_64代码?
我正打算做这件事,请各位高手指点,以下是我的设想
1、前chroot阶段
这个阶段如果生成x86_64代码,应该是不能运行。因为内核没有运行在64位模式,这样chroot之后x86_64的工具就无法运行。
2、chroot阶段
这个阶段应该是要生成x86_64代码。包括内核等一系列工具都要运行在64位模式。为此,应该对标准的LFS Book做些什么修改呢?
发表于 2005-3-25 16:20:34 | 显示全部楼层
还没有钱买x86_64的,所以还没有试过。
回复 支持 反对

使用道具 举报

发表于 2005-3-25 16:32:45 | 显示全部楼层
AMD64的CPU现在要多少钱啊?
回复 支持 反对

使用道具 举报

发表于 2005-3-25 18:01:36 | 显示全部楼层
老老实实完成lfs

之后重新编译内核
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-3-25 23:09:54 | 显示全部楼层
Post by ServerOnly
老老实实完成lfs

之后重新编译内核


不对。这样只有内核运行于64位模式,所有的应用程序都在原有的32位模式下运行的。这可不是传说中的64位操作系统。
所以应该不是这样。

所以,LFS的过程也应该要变一下才对,因为看了LFS Book,说得很清楚:在第6章的编译顺序是非常重要的,后面的编译需要用到前面编译出来的组件。但对于我,应该是要创建好所有的应用程序,每一步都不能依赖前一步的编译结果,而且运行测试也没有什么意义,因为在32位平台运行64位程序必然失败。

但第5章应该是可以照本宣科。
回复 支持 反对

使用道具 举报

发表于 2005-3-26 12:11:16 | 显示全部楼层
需要交叉编译,搭建交叉编译环境
回复 支持 反对

使用道具 举报

发表于 2005-3-26 12:14:35 | 显示全部楼层
我觉得是否应该这样,先编译成一个基本的LFS,然后再利用这个LFS再编译一个全新的。是否就可以了呢?
也就是说在编译第一个LFS的时候,内核采用的就是64位的,然后第二个LFS就应该基本没有问题了吧?
不知道这样是否可行呢?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-3-26 15:23:54 | 显示全部楼层
Post by 小丑奇兵
我觉得是否应该这样,先编译成一个基本的LFS,然后再利用这个LFS再编译一个全新的。是否就可以了呢?
也就是说在编译第一个LFS的时候,内核采用的就是64位的,然后第二个LFS就应该基本没有问题了吧?
不知道这样是否可行呢?


这样还不如直接在现有系统中编译并安装一个64位内核,再来开始LFS。我先试试这个方法吧。
回复 支持 反对

使用道具 举报

发表于 2005-3-27 15:10:56 | 显示全部楼层
关键还是,这个64位的工具链怎么做出来。我觉得要在64位的平台上做。
回复 支持 反对

使用道具 举报

发表于 2005-3-27 15:29:26 | 显示全部楼层
貌似 LFS 7.0 会有交叉编译的内容吧,我看到文档里有 cross compile 分支。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表