首页 > 代码库 > ecos编译redboot,vmware运行redboot,执行hello world(图形配置)

ecos编译redboot,vmware运行redboot,执行hello world(图形配置)

1- 下载源文件

:~/ecos$ ls -lrt

total 80

drwxr-xr-x 7 XXXX XXXX  4096 Mar 27  2009 ecos-3.0

-rw-r--r-- 1 XXXX XXXX 60197 Jul  3 11:45 ecos-install.tcl

drwxr-xr-x 3 XXXX XXXX 4096 Jul  5 09:15 gnutools

-rwxr-xr-x 1 XXXX XXXX  487 Jul  5 09:16 ecosenv.sh

-rwxr-xr-x 1 XXXX XXXX   455 Jul  5 09:16 ecosenv.csh

 

修改内存布局文件
:~/i386/ecos-3.0$ find . -name "mlt_i386_pc_floppy.ldi"
./packages/hal/i386/pc/v3_0/include/pkgconf/mlt_i386_pc_floppy.ldi
:~/i386/ecos-3.0$ cd ./packages/hal/i386/pc/v3_0/include/pkgconf/
:~/i386/ecos-3.0/packages/hal/i386/pc/v3_0/include/pkgconf$ ls -lrt *floppy*
-rw-r--r-- 1 xxx xxx 719 Jun 11 2001 mlt_i386_pc_floppy.h
-rw-r--r-- 1 xxx xxx 702 Sep 12 2001 mlt_i386_pc_floppy.mlt
-rw-r--r-- 1 xxx xxx 911 Sep 12 2001 mlt_i386_pc_floppy.ldi
以上3个文件中对应RAM配置物理地址为0xa0000的所有地址修改0x1000000(因为默认配置是针对普通PC的)

 

2- 启动图形配置

cd ~/ecos/ecos-3.0/tools/bin$

./configtool

Build->Templates

Build->Packages

Startup type : FLOPPY

保存为redboot.ecc

Build->Library 编译

3- 生成软盘镜像 redboot.flp

cd ~/ecos/redboot_install/bin$

dd conv=sync if=redboot.bin of=redboot.flp bs=1440k

生成 

redboot.flp

4- 生成编译hello.c所需要的库

 

保存为default.ecc

Build->Library 编译

编译hello.c

:~/ecos/ecos-3.0/examples$ make INSTALL_DIR=/home/ecos/default_install

hello放入tftp服务器目录

cp hello /srv/tftp/tftproot/

5- 启动redboot加载hello

 

 

ERROR:

 

解决方案:

修改内存布局文件
:~/i386/ecos-3.0$ find . -name "mlt_i386_pc_floppy.ldi"
./packages/hal/i386/pc/v3_0/include/pkgconf/mlt_i386_pc_floppy.ldi
:~/i386/ecos-3.0$ cd ./packages/hal/i386/pc/v3_0/include/pkgconf/
:~/i386/ecos-3.0/packages/hal/i386/pc/v3_0/include/pkgconf$ ls -lrt *floppy*
-rw-r--r-- 1 xxx xxx 719 Jun 11 2001 mlt_i386_pc_floppy.h
-rw-r--r-- 1 xxx xxx 702 Sep 12 2001 mlt_i386_pc_floppy.mlt
-rw-r--r-- 1 xxx xxx 911 Sep 12 2001 mlt_i386_pc_floppy.ldi
以上3个文件中对应RAM配置物理地址为0xa0000的所有地址修改0x1000000(因为默认配置是针对普通PC的)