制作嵌入式Linux根文件系统


制作嵌入式Linux根文件系统
 
操作系统:fedora 17 (linux-3.3.4)
开发板:友善之臂Tiny6410
gcc & g++ : 4.7.2
arm-linux-gcc & arm-linux-g++ : 4.5.1
busybox-1.20.2
1.新建目录rootfs
# mkdir rootfs
# cd rootfs
  www.2cto.com  
2.编译安装Busybox
解压busybox源码包
# tar jxvf busybox-1.20.2.tar.bz2
配置编译选项
# cd busybox-1.20.2
# make menuconfig
在Busybox Settings -> Build Options -> Cross Compiler prefix 设置编译器前缀为 arm-linux-
编译并安装,默认安装在_install目录
# make && make install
# cp _install/* /home/sunke/work/rootfs -r
这样就生成了bin sbin usr linuxrc ,进入usr目录新建额外的几个目录
# cd usr
# mkdir lib local share
3.新建并填充lib目录
# mkdir lib
# cd lib
从交叉编译器的安装路径拷贝出对应的动态库
# cp -d /opt/FriendlyARM/toolschain/4.5.1/arm-none-linux-gnueabi/lib/*.so* ./
额外再建一个modules目录
# mkdir modules
4.新建并填充etc目录
# mkdir etc
# cd etc
etc目录较复杂,但内容固定,可直接拷贝出友善之臂的etc目录,本手册直接利用了国嵌提供的etc目录
# tar zxvf etc.tar.gz
# cp etc/* /home/sunke/work/rootfs -r
5.新建并填充dev目录
# mkdir dev
# cd dev
 
手动创建两个设备,其他设备由mdev自动创建
# mknod -m 666 console c 5 1
# mknod -m 666 null c 1 3
6.新建其他目录
# mkdir proc sys mnt mnt/nfs tmp var home root
7.将rootfs打包成ubi镜像
需将友善之臂提供的工具解压到/usr/sbin
mkubimage-mlc2 rootfs rootfs-201212262052.ubi
8.通过USB或SD卡下载到开发板上,启动成功。
PS:可以在/etc/init.d/ 添加启动项(配置网络、设置环境变量、自启动程序等)
PS:配置网络的命令如下
ifconfig eth0 10.10.206.130 netmask 255.255.255.0
route add default gw 10.10.206.254
 

相关内容

    暂无相关文章