使用Bubybox1.10制作文件系统成功[原创]

前几天编译Busybox1.10使用的交叉编译工具是从 http://www.codesourcery.com/gnu_toolchains/arm/download.html下载的arm-none-linux-gnueabi-交叉编译工具,gcc版本是4.2.1,上一篇日志中说到刚开始总是遇到”Failed to execute /linuxrc.  Attempting defaults...“的错误,查了好多资料没有解决,也没有怀疑交叉编译工具的问题。

今天编写程序后使用arm-none-linux-gnueabi-交叉编译工具编译(静态编译),然后使用仿真工具qemu-arm测试,发现出现和昨天同样的问题:
-------------------------------------------------
qemu: unhandled CPU exception 0x8 - aborting
R00=001c596c R01=00000000 R02=001c5960 R03=00000001
R04=000cbf94 R05=00000000 R06=00000000 R07=00000000
R08=000cbfdc R09=000cbf94 R10=00000000 R11=00000000
R12=ffff0fff R13=b7d6c470 R14=000d4588 R15=ffff0fa0
PSR=20000010 --C- A usr32 ffff0fa0
s00=00000000(       0) s01=00000000(       0) d00=0000000000000000(       0)
s02=00000000(       0) s03=00000000(       0) d01=0000000000000000(       0)
s04=00000000(       0) s05=00000000(       0) d02=0000000000000000(       0)
s06=00000000(       0) s07=00000000(       0) d03=0000000000000000(       0)
s08=00000000(       0) s09=00000000(       0) d04=0000000000000000(       0)
s10=00000000(       0) s11=00000000(       0) d05=0000000000000000(       0)
s12=00000000(       0) s13=00000000(       0) d06=0000000000000000(       0)
s14=00000000(       0) s15=00000000(       0) d07=0000000000000000(       0)
s16=00000000(       0) s17=00000000(       0) d08=0000000000000000(       0)
s18=00000000(       0) s19=00000000(       0) d09=0000000000000000(       0)
s20=00000000(       0) s21=00000000(       0) d10=0000000000000000(       0)
s22=00000000(       0) s23=00000000(       0) d11=0000000000000000(       0)
s24=00000000(       0) s25=00000000(       0) d12=0000000000000000(       0)
s26=00000000(       0) s27=00000000(       0) d13=0000000000000000(       0)
s28=00000000(       0) s29=00000000(       0) d14=0000000000000000(       0)
s30=00000000(       0) s31=00000000(       0) d15=0000000000000000(       0)
FPSCR: 00000000
qemu: uncaught target signal 6 (Aborted) - exiting
-------------------------------------------------
这才想到应该是交叉编译工具的问题,于是还使用原来的交叉编译工具( 直接下载20070808版),原来编译linux-2.6.24内核是就是使用的这个版本,只是太占用空间了900多M,因此编译完内核后就删除了。

关于Busybox1.10的配置参见我的上一篇日志,只不过在配置前应该修改Config.in文件:
找到menu "General Configuration",然后在其后适当位置加入如下内容:
config CONFIG_FEATURE_DEVFS
    bool "Support for devfs"
    default n
    help
      Enable if you want BusyBox to work with devfs.
这样,在进行配置时就会出现“Support for devfs”选项。当然还要修改Makefile文件确定目标平台以及交叉编译工具前缀。

然后进行make,我的配置除了几个应该注意的地方已外(参见我的上一篇日志),其余都采用默认的配置,结果在编译route时出错,于是重新进行配置,去掉了关于route的几个选项,于是编译通过,使用qemu-arm测试编译结果也成功。然后就是准备制作文件系统了,可以参考我的上一篇日志。

下载、烧录、启动成功,如下图所示:


后记:
看来从 http://www.codesourcery.com/gnu_toolchains/arm/download.html下载的arm-none-linux-gnueabi-交叉编译工具在使用时还是存在一些问题,如何修正没时间管它了,反正有好用的交叉编译工具。

今天的工作又再一次说明了借助仿真工具qemu-arm的好处,正是因为它,我才找到原来遇到的一些问题使我所采用的交叉编译工具的问题。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值