LinuxSir.cn,穿越时空的Linuxsir!

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

suse编译ext2fs工具有错w

[复制链接]
发表于 2007-2-24 16:18:59 | 显示全部楼层 |阅读模式
用于嵌入式开发时,suse有一个很奇怪的问题。
当编译uclinux或者snapgear包时,如果选择了ext2fs文件工具(如mkext2fs,uuid等)的话,会出现编译错误:
undefined reference to 'et_list_lock'
undefined reference to 'et_list_unlock',
而fedora、mandriva等版本就没有这个问题。
各位是不是也遇到过这个问题?
发表于 2007-2-24 19:22:48 | 显示全部楼层
It turns out that ext2_err.[ch] is auto-generated by
uClinux-dist-20051014/user/e2fsprogs/lib/et/compile_et which, in turn,
is
generated from
uClinux-dist-20051014/user/e2fsprogs/lib/et/compile_et.sh.in
by subtituting variables.  On this substitution pass, the line

  DIR="${DIR- at datadir@/et}"

is substituted to

  DIR="${DIR-/usr/share/et}"

instead of

  DIR="${DIR-/path/to/uClinux-dist-20051014/user/e2fsprogs/lib/et}"

This causes the et_h.awk and et_c.awk programs from my suse-10.1 system
to be used instead of the ones which are bundled with uClinux.  Since
libcom_err on suse-10.1 is adopted to the 2.6 kernel, it tries to use
functions not available on uclinux's 2.4 kernel.

I know I can[color="Red"] edit compile_et to (temporarily) fix the problem, but this
would be only a dirty kludge.  What would be the clean way to cause the
correct @datadir@ subtitution to be used?

这些应该有帮助吧。具体我也不懂。
回复 支持 反对

使用道具 举报

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

本版积分规则

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