Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1039370
  • 博文数量: 244
  • 博客积分: 6820
  • 博客等级: 准将
  • 技术积分: 3020
  • 用 户 组: 普通用户
  • 注册时间: 2008-09-09 21:33
文章分类

全部博文(244)

文章存档

2013年(1)

2012年(16)

2011年(132)

2010年(3)

2009年(12)

2008年(80)

我的朋友

分类: LINUX

2008-09-09 23:00:12

 
]
 

 

----------------------------------------------
bootloader
编译环境:
vivi
版本:0.1.4
交叉编译器(CROSS-COMPILE)版本:2.95.3
(下载地址略:网上很多搜下。)
操作系统:Fedora  7
======================================
linux
内核编译环境:
内核版本:linux2.6.22.1
交叉编译器(CROSS-COMPILE)版本: 4.2.0
(下载地址:
  

  
注意:下载选项,要选 ARM EABI 的选项,和 IA32 GNU/linux
操作系统: Fedora  7
======================================
文件系统编译环境:
busybox1.5.1
,或1.4.2
交叉编译器(CROSS-COMPILE)版本: 3.3.2
(下载地址:
操作系统: Fedora  7
----------------------------------------------
硬件:
    
板子是中嵌科技的CE24101
    
内存:     64MB SDRAM16M×16位);
    CPU
      S3C2410 ARM处理器,
    Nor Flash
2MBNor Flash,用于固化测试程序(用来下载bootloader,内核,或文件系统);
    NANDflash: 64MB
Nand Flash,用于存储BootloaderLinux内核及文件系统、应用程序和数据;
===============================================================
    
一: 编译环境搭建
===============================================================
一:搭建交叉编译环境
说明:由于编译交叉编译环境比较繁琐,建议大家用已经编译好的交叉编译环境。
下面以3.3.2的交叉编译环境的搭建为例,其他的两个的编译器环境搭建一样。

1. 解压文件命令:
        tar  jxvf   obsolete-gcc-3.3.2.tar.bz2
      
obsolete-gcc-3.3.2.tar.bz2下载地址:

2. 把解压的文件夹中的3.3.2文件夹拷贝到 /usr/local/arm目录下
      
(如果没有arm目录就新建arm目录,但是一定要是拷贝到这个目录,不然不能运行)。

3. 在命令窗口输入
        export PATH=/usr/local/arm/3.3.2/bin:$PATH

4. 如果输入 arm 然后按下tab键能自动补全命令 armlinux 说明搭建成功。

===============================================================
      
二:     bootloader 编译
===============================================================

二:   bootloader的修改

主要修改分区信息,如果要能下载yaffs文件系统还得另外打补丁,最近我会写编这样的文章。
具体修改:

1.     解压vivi(具体命令略,如果你解压都不会,移植可能对你来说有点困难)
       [root@localhost vivi]# ls
       arch     CVS            drivers  init  Makefile         Rules.make  test  vivi      vivi.map
       COPYING  Documentation  include  lib   Makefile.newSDK  scrīpts     util  vivi-elf

2.     [root@localhost vivi]# vim ./arch/s3c2410/smdk.c
修改 NAND flash 分区如下:
----------------------------------------------------------------------
mtd_partition_t default_mtd_partitions[] = {
        {
                name:           "bootloader",
                offset:         0,
                size:           0x00020000,
                flag:           0
        }, {
                name:           "param",
                offset:         0x00020000,
                size:           0x000E0000,
                flag:           0
        }, {
                name:           "kernel",
                offset:         0x00100000,
                size:           0x00300000,
                flag:           0
        }, {
                name:           "root",
                offset:         0x00400000,
                size:           0x01400000,
                flag:           MF_BONFS
        }, {
                name:           "user",
                offset:         0x01800000,
                size:           0x02C00000,
                flag:           MF_BONFS
        }
};
-------------------------------------------------------------------------

3. 修改Makefile
[root@localhost vivi]# vim Makefile
修改  ARCH    LINUX_INCLUDE_DIR   CROSS_COMPILE 如下:
------------------------------------------------------------------------
ARCH := arm
LINUX_INCLUDE_DIR       = /usr/local/arm/2.95.3/include/
CROSS_COMPILE   = /usr/local/arm/2.95.3/bin/arm-linux-

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