LinuxSir.cn,穿越时空的Linuxsir!

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

64位系统对于LFS是否有影响?

[复制链接]
发表于 2008-2-13 09:46:14 | 显示全部楼层 |阅读模式
我的笔记本装的是UBUNTU 7.04

X64的,不知道做LFS的时候,是不是需要在编译的时候指定生成中间系统的时候,使用32位的,或者是我生成出来的就是64位的?

不大懂HOST系统与目标系统之间关系?哪位高手解释解释啊???
发表于 2008-2-13 21:37:25 | 显示全部楼层
你的目的系统是 32 位还是 64 位?

官方有实验性质的原生 64 位 LFS 手册,但不是很成熟,想做 64 位的话请看 CLFS 手册

貌似楼主本身毫无 LFS 经验,这样一开始就 CLFS 恐怕碰钉的机会甚高,宜先详细阅读手册才进行,如许何的话,最好先来一次 32 位的 LFS,掌握好过程及了解其精髓後再 CLFS 必然事半功倍 ;)
回复 支持 反对

使用道具 举报

发表于 2008-2-13 22:04:51 | 显示全部楼层
uname -r

如果看到的是 64位的,你最好是用 CLFS 的方法。而且,也应该用 CLFS !
先练几次 LFS 再说。LFS手册中的有些东西, CLFS 里面不一定有。
另外, lfslivecd 成功率高。推荐!
再就是多读精华帖。每个都看一下。做 LFS 或 CLFS 的时候要多用心,而不仅仅只是多动手。
回复 支持 反对

使用道具 举报

发表于 2008-2-13 22:10:16 | 显示全部楼层
那当然不能缺少 tfkdmwmqtr 那篇 CLFS 的精文了 :)
回复 支持 反对

使用道具 举报

发表于 2008-2-13 22:13:54 | 显示全部楼层
Post by bailiang27;1815736
我的笔记本装的是UBUNTU 7.04

X64的,不知道做LFS的时候,是不是需要在编译的时候指定生成中间系统的时候,使用32位的,或者是我生成出来的就是64位的?

不大懂HOST系统与目标系统之间关系?哪位高手解释解释啊???
By the way,不知何故,UB 默认采用 mawk,结果很多兄弟做 LFS 都出问题,改回 gawk 才行

不过想提高成功机会,推荐用 LiveCD 做 host
回复 支持 反对

使用道具 举报

发表于 2008-2-13 23:24:51 | 显示全部楼层
Post by d00m3d;1815927
那当然不能缺少 tfkdmwmqtr 那篇 CLFS 的精文了 :)


那个 x86_64 Multilib 的,我目前并没有在使用它。这个用来练手真的是很不错。如果不怕麻烦,练练也不错。
但如果要拿编译的系统来使用还是 Non-Multilib 好了。Multilib就是系统中同时有 32bit 和 64bit 的程序库文件,Non-Multilib就是单一的32bit或者64bit 。
桌面系统我用 32位,简单。而且多媒体支持好。Pure64 暂时不适合做桌面系统。
回复 支持 反对

使用道具 举报

发表于 2008-2-16 20:29:04 | 显示全部楼层
Ubuntu 64位原生Multilib LFS我正在研究。在工具链阶段,目前已知的问题包括:

1、Ubuntu 的Multilib配置和工具链默认配置不同。Multilib配置是指32位和64位库文件搜索位置。默认工具链的32bit库放在/lib下,64位则放在/lib64下。但Ubuntu则是/lib32和/lib。
2、以上问题造成一系列相关的配置问题。首先是binutils。Binutils会安装一些与二进制文件格式相关的库文件。大多数这样的库文件将使用默认配置,在64位编译的情况下会安装在/lib64目录下。但libiberty却自作聪明地通过宿主gcc(用于编译的gcc)获取安装目录。这样一来,libiberty在Ubuntu下将安装在/lib目录而不是/lib64目录下。
3、其次是gcc。gcc忽略所有宿主的配置,采用其默认设置来查找库文件位置。在第一次编译的时候这没有问题。但随后它将根据默认配置在/lib查找32位库文件。这在Ubuntu下将不会成功。

相信这些问题都可以解决,但作为新手,还是乖乖采用CLFS-Multilib比较稳妥。
回复 支持 反对

使用道具 举报

发表于 2008-2-17 08:31:37 | 显示全部楼层
Post by 地球发动机;1816794
Ubuntu 64位原生Multilib LFS我正在研究。在工具链阶段,目前已知的问题包括:

1、Ubuntu 的Multilib配置和工具链默认配置不同。Multilib配置是指32位和64位库文件搜索位置。默认工具链的32bit库放在/lib下,64位则放在/lib64下。但Ubuntu则是/lib32和/lib。
2、以上问题造成一系列相关的配置问题。首先是binutils。Binutils会安装一些与二进制文件格式相关的库文件。大多数这样的库文件将使用默认配置,在64位编译的情况下会安装在/lib64目录下。但libiberty却自作聪明地通过宿主gcc(用于编译的gcc)获取安装目录。这样一来,libiberty在Ubuntu下将安装在/lib目录而不是/lib64目录下。
3、其次是gcc。gcc忽略所有宿主的配置,采用其默认设置来查找库文件位置。在第一次编译的时候这没有问题。但随后它将根据默认配置在/lib查找32位库文件。这在Ubuntu下将不会成功。

相信这些问题都可以解决,但作为新手,还是乖乖采用CLFS-Multilib比较稳妥。
昔日 地球 在 CLFS-1.0 还未推出之时已掌握其 64-bit Multilib 玩法,诚蒙启发,我才决心做 CLFS x86 Multilib,地球兄的新作必定期待,期待!
回复 支持 反对

使用道具 举报

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

本版积分规则

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