GDB模拟uClinux运行

1     得到uCLinuxGDBarm-elftools-20030314.sh(或其他版本)。

2     GDB

          bunzip2 < gdb-5.0.tar.bz2 | tar xvf -

             gunzip  < gdb-5.0-uclinux-armulator-20021127.patch.gz | patch -p0

                cd gdb-5.0

             ./configure –target=arm-elf

                    make && make install

注:安装过程中出现:"gdb/62: gdb/rdi-share/devsw.c:39: storage size of `lt' isn't known."

>:/gdb-5.0/gdb/rdi-share/devsw.c中加入"#include<time.h>"

> Fix:

missing include file in gdb-5.0/gdb/rdi-share/devsw.c:

#include <time.h>

3     安装uCLinux。生成uClinux-dist文件夹;安装arm-elftools-20030314.sh

4           编译内核:

    make menuconfigmake xconfig

        make menuconfig

  配置内核以后文章会陆续提到.

 make dep

dependence 依赖。
make dep
的意思就是说:如果你使用程序A(比如支持特殊设备),而A需用到B(比如BA的一 个模块/子程序)

而你在做make config的时候将一个设备的驱动 由内核支持改为module,或取消支持,这将可能影响到B的一个参数 的设置,需重新编译B,重新编译或连接A....如果程序数量非常多, 你是很难手工完全做好此工作的。

所以,你要make dep。如果你make menumake configmake xconfig后,直接reboot,会更快。
 
只是你的内核根本没有任何改变。^=^ 

         make clean

将清除所有要被清除的文件

          make lib_only

编译用户程序

           make romfs

              生成romfs文件系统

           make image

生成 romfs.o文件,第一次执行时会提示错误,不必理会,以后编译就不会再报错了。

           make

编译成功后,在uClinux-dist/目录下产生images目录,其中的3个文件:image.ramimage.romromfs.img就是我们需要使用的二进制文件.

内核下面:比如/Linux-2.4.x生成一个名为linux的文件.

 

5     编译生成的内核的配置:

        copy /image目录下的romfs.img文件到所编译内核版本的目录下面,比如:/Linux-2.4.x,然后更名为boot.rom;或者使用ln –s来关联

       改名linux ――> linux.2.4.x

6     GDB模拟:

           #arm-elf-gdb linux.2.4.x

       (gdb)#ttarget sim

    (gdb)#load

    (gdb)run

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值