• 嵌入式Linux开发环境的搭建


    一个、制造u-boot.bin文件:
       tar xjf u-boot-1.1.6.tar.bz2
       cd u-boot-1.1.6
       patch -p1 < ../u-boot-1.1.6_jz2440.patch
       make 100ask24x0_config

       make


    二、制作适用于4.3寸屏幕的uImage文件:
       tar xjf linux-2.6.22.6.tar.bz2
       cd linux-2.6.22.6
       patch -p1 < ../linux-2.6.22.6_jz2440.patch
       mv ../4.2LCD_mach-smdk2440.c arch/arm/mach-s3c2440/mach-smdk2440.c
       cp config_ok .config

       make uImage


    三、构建根文件系统
    1、移植Busybox
       tar xjf busybox-1.7.0.tar.bz2
       cd busybox-1.7.0
       make menuconfig(配置)
       vi Makefiel(改动Makefile ARCH ?= arm CROSS_COMPILE ?= arm-linux-)
       make(编译)
       make CONFIG_PREFIX=dir_path install(安装)
    2、使用glibc库
       mkdir -p /work/nfs_root/rootfs/lib
       cd /work/tools/gcc-3.4.5-glibc-2.3.6/arm-linux/lib
       cp *.so* /work/nfs_root/rootfs/lib -d
    3、构建etc文件夹
       
    a、etc/inittab文件内容例如以下:
       # /etc/inittab
       console::askfirst:-/bin/sh
       ::sysinit:/etc/init.d/rcS
       tty1::askfirst:-/bin/sh
       ::ctrlaltdel:/sbin/reboot
    b、etc/init.d/rcS文件内容例如以下:
       #!/bin/sh
       mount -a
       mkdir /dev/pts
       mount -t devpts devpts  /dev/pts
       echo /sbin/mdev  >  /proc/sys/kernel/hotplug
       mdev -s
    c、etc/fstab文件内容例如以下:
       #device        mount-point    type   options   dump  fsck order
       proc           /proc          proc   defaults   0     0
       tmpfs          /tmp           tmpfs  defaults   0     0
       sysfs          /sys           sysfs  defaults   0     0
       tmpfs          /dev           tmpfs  defaults   0     0


    4、构建dev文件夹
       sudo mknod console c 5 1
       sudo mknod null c 1 3
       sudo mknod ttySAC0 c 204 64
       sudo mknod mtdblock0 b 31 0
       sudo mknod mtdblock1 b 31 1
       sudo mknod mtdblock2 b 31 2


    5、构建其它文件夹
       mkdir proc mnt tmp sys root


    四、制作yaffs文件系统映像文件
        cd /work/nfs_root
        mkyaffsimage rootfs rootfs.yaffs
    五、制作jffs2文件映像文件
        cd /work/nfs_root
        mkfs.jffs2 -n s 2048 -e 128KiB -d rootfs -o rootfs.jffs2


    六、通过设置u-boot的bootargs參数,选择根文件系统启动方式:
        1、使其可以通过nfs启动
        set bootargs noinitrd root=/dev/nfs nfsroot=59.73.166.32:/work/nfs_root/first_fs ip=59.73.166.31:59.73.166.32:59.73.166.1:255.255.255.0::eth0:off console=ttySAC0 init=/linuxrc
    stdin=serial
        saveenv
        2、从块设备启动
        set bootargs noinitrd root=/dev/mtdblock3 rootfstype=jffs2 init=/linuxrc console=ttySAC0
        saveenv

    版权声明:本文博客原创文章,博客,未经同意,不得转载。

  • 相关阅读:
    【二分】Pair of Topics
    【Windows】制作登录界面
    【Windows】制作文本框
    【windows】制作幸运“Tiger”机
    【python】函数
    SPOJ 3267 DQUERY
    CF 570D Tree Requests
    UVa 11809 Floating-Point Numbers
    Luogu P5098 Cave Cows 3
    GHOJ 428 未出现的子串
  • 原文地址:https://www.cnblogs.com/gcczhongduan/p/4670657.html
Copyright © 2020-2023  润新知