LinuxSir.cn,穿越时空的Linuxsir!

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

CLFS/Embedded中uClibc库的问题请教

[复制链接]
发表于 2007-3-4 22:44:23 | 显示全部楼层 |阅读模式
在CLFS中,文档建议使用的uClibc软件包在编译pthread库时,报告_errno和_h_errno没有链接对象
文档建议的uClibc的版本时snapshot版,最近的是0.9.29的版本
我后来试了0.9.28.3的版本,可以编译通过,但.config不支持CLFS文档提到的FULL_RPC和RPC的重入
有在做CLFS的朋友给点建议,是我编译的问题,还是CLFS文档的问题,因为CLFS embedded的文档还在开发中,我不确定问题出在哪里
发表于 2007-3-4 23:44:23 | 显示全部楼层
做过,时间长了点,忘了。
回复 支持 反对

使用道具 举报

发表于 2007-3-5 00:00:15 | 显示全部楼层
uClibc我当时也是换了一个版本才编译过的。现在这个系统在我优盘没起起来。老是要重启机子来试我就没管他了。装了个VirtualBox本想用他来试可他找不到usb,没办法这个系统放在u 盘上两个月了。
回复 支持 反对

使用道具 举报

发表于 2007-3-5 09:22:58 | 显示全部楼层
我也做过,印象是"uClibc的不能使用snapshot版本"
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-3-5 15:04:42 | 显示全部楼层
我用0.9.28版本可以编译通过。
问题在于Embedded文档对uClibc配置时,使用了FULL_RPC和REENTRANT_RPC的两个选项在0.9.28还没有,从0.9.29才开始支持,说明CLFS的作者一定是拿了0.9.29的版本做的试验。
我查了出现错误的原因,关于_errno和_h_errno这两个符号在源代码中写道:These variables are used by the setup code.
我的理解是这两个符号如果不需要(和选项有关)就不会被编译进内核,所以我怀疑在选择uClibc的选项不合理引起的,而这部分恰好在CLFS中没有提及(由于代码更新的缘故)。


还有,在install busybox时,按照文档提供的命令,并没有把编译出的内容复制到DESTDIR的目录下,而是放在了源代码的目录中,不知道什么原因。希望知道的朋友给点建议。
回复 支持 反对

使用道具 举报

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

本版积分规则

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