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的)

ecos编译redboot,vmware运行redboot,执行hello world(图形配置)的更多相关文章

  1. 【ecos学习1】wmware运行redboot[方法一]--脚本实现配置

    背景: 远程服务器Ubuntu生成软盘镜像,通过Mac下wmware运行. 1- 环境及版本: uname -a 2.6.38-8-generic #42-Ubuntu SMP Mon Apr 11 ...

  2. 用命令行编译java并生成可执行的jar包

    用命令行编译java并生成可执行的jar包 1.编写源代码. 编写源文件:CardLayoutDemo.java并保存,例如:I:\myApp\CardLayoutDemo.java.程序结构如下: ...

  3. gcc编译通过,运行却显示“段错误”的解决方法

    ​第一次在Liunx上(liunx mint 17)使用gcc编译c文件,竟然提示“找不到stdio.h",经过google后发现执行 sudo apt-get install build- ...

  4. Heka 编译安装后 运行报错 panic: runtime error: cgo argument has Go pointer to Go pointer

    Heka 编译安装后 运行报错 panic: runtime error: cgo argument has Go pointer to Go pointer 解决办法: 1.  Start heka ...

  5. 浅谈java编译机制和运行机制

    源文件和字节码的组成方式 源文件: 拓展名后跟java的文件即java的源文件. Java 源码编译由以下三个过程组成: 1.分析和输入到符号表 2.注解处理 3.语义分析和生成class文件 流程图 ...

  6. .Net Core in Docker - 在容器内编译发布并运行

    Docker可以说是现在微服务,DevOps的基础,咱们.Net Core自然也得上Docker..Net Core发布到Docker容器的教程网上也有不少,但是今天还是想来写一写. 你搜.Net c ...

  7. 正确理解java编译时,运行时以及构建时这三个概念

    Java中的许多对象(一般都是具有父子类关系的父类对象)在运行时都会出现两种类型:编译时类型和运行时类型,例如:Person person = new Student();这行代码将会生成一个pers ...

  8. Android 使用NDK编译二进制文件并运行

    Android 使用NDK编译二进制文件并运行本文介绍如何编译可以在Android平台上运行的二进制可执行文件. 首先我们,知道,Android是基于Linux的,而在Linux上,可以执行二进制文件 ...

  9. java编译通过,运行却提示找不到或无法加载主类

    问题: HelloWorld.java 1 package myP101; 2 3 public class HelloWorld { 4 public static void main(String ...

随机推荐

  1. symfony2 登录验证(转自http://www.newlifeclan.com/symfony/archives/300)

    注意:如果你需要为存储在某种数据库中的用户做一个登录表单,那么你应该考虑使用FOSUserBundle,这有助于你建立你的User对象,还为您提供了常见的登录.注册.忘记密码的路由和控制器. 在此文章 ...

  2. HDU Today--hdu2112

    HDU Today Time Limit: 15000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total ...

  3. jquery中ajax的dataType属性包括哪几项

    参考ajax api文档:http://www.w3school.com.cn/jquery/ajax_ajax.asp dataType类型:String预期服务器返回的数据类型.如果不指定,jQu ...

  4. PowerShell常用的属性

    get-location | get-member  -membertype  property -------获取对象的属性---------- 获取对象特定的成员, 湖区.Net Framwork ...

  5. 10.1.5 Connection Character Sets and Collations

    10.1.5 Connection Character Sets and Collations Several character set and collation system variables ...

  6. libeXosip2(1-3) -- How-To send or update registrations.

    How-To send or update registrations. The eXtented eXosip stack Initiate a registration To start a re ...

  7. 《Algorithms 4th Edition》读书笔记——2.4 优先队列(priority queue)-Ⅳ

    2.4.4 堆的算法 我们用长度为 N + 1的私有数组pq[]来表示一个大小为N的堆,我们不会使用pq[0],堆元素放在pq[1]至pq[N]中.在排序算法中,我们只能通过私有辅助函数less()和 ...

  8. Micro Python - Python for microcontrollers

    Micro Python - Python for microcontrollers MicroPython

  9. MVVM 介绍

    我会修改一个关键架构,并将其带入我从那时起就在开发的各种应用,即使用一种叫做 Model-View-ViewModel 的架构替换 Model-View-Controller. 所以,MVVM 到底是 ...

  10. ios block使用

    BlockTest.h #import <Foundation/Foundation.h> typedef void (^didFinishBlock)(NSString *str); t ...