Chinaunix首页 | 论坛 | 博客
  • 博客访问: 107672
  • 博文数量: 51
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 12
  • 用 户 组: 普通用户
  • 注册时间: 2014-02-08 10:52
文章分类

全部博文(51)

文章存档

2016年(5)

2015年(3)

2014年(43)

我的朋友

分类: LINUX

2014-05-30 09:50:26

原文地址:开始学习busybox源码 作者:gliethttp

从2005年7月到现在大学毕业3年多了,在嵌入式领域也搞了3年多了,早就闻过这个迷你工具,现在有些私人时间,开始研究研究busybox源码.

到官网下载busybox源码,我们就可以从busybox这个能够自成体系的牛程序中汲取一些养料.



[luther@gp open_sources]$ tar jxvf busybox-1.12.0.tar.bz2 -C /vobs
[luther@gp busybox-1.12.0]$ make menuconfig
[luther@gp busybox-1.12.0]$ make
  SPLIT   include/autoconf.h -> include/config/*
  GEN     include/bbconfigopts.h
  HOSTCC  applets/usage
  GEN     include/usage_compressed.h
  HOSTCC  applets/applet_tables
  GEN     include/applet_tables.h
  CC      applets/applets.o
  LD      applets/built-in.o
  LD      archival/built-in.o
  CC      archival/ar.o
  CC      archival/bbunzip.o
  CC      archival/bzip2.o
  ......
  CC      util-linux/setarch.o
  CC      util-linux/swaponoff.o
  CC      util-linux/switch_root.o
  CC      util-linux/umount.o
  AR      util-linux/lib.a
  LD      util-linux/volume_id/built-in.o
  AR      util-linux/volume_id/lib.a
  LINK    busybox_unstripped
Trying libraries: crypt m
 Library crypt is not needed
 Library m is needed
Final link with: m
[luther@gp busybox-1.12.0]$ ll  busybox
-rwxrwxr-x 1 luther luther 612K 09-14 10:41 busybox
好了编译完了,可以运行试试,
[luther@gp busybox-1.12.0]$ ./busybox ash       进入ash
/vobs/busybox-1.12.0 $ pwd                      ok,正常进入了
/vobs/busybox-1.12.0
/vobs/busybox-1.12.0 $ exit                     退出ash
[luther@gp busybox-1.12.0]$                     看来一切运行正常
所以有了上面的源码,我们还等什么,赶紧开始研究吧,对了,make menuconfig时选中debug调试,如果不行,进入Makefile,把-O2改成-g,
这样就可以用insight或者kdbg调试了,这么复杂的程序,不先借助GDBTUI等辅助工具,恐怕要花很多时间,看到头大才能搞清[luther.gliethttp].

阅读(1804) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~