文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>构建文件系统

构建文件系统

时间:2010-07-21  来源:unixeye

1.    编译busybox

cd busybox-1.16.0

 

修改该目录下的Makefile 文件。

将164行的

     CROSS_COMPILE ?=

改为

     CROSS_COMPILE ?= arm-linux-

 

将190行的

     ARCH ?= $(SUBARCH)

改为

     ARCH ?= arm

 

配置busybox 执行

make menuconfig

 

具体配置如下(这里仅列出修改过的部分,其他选项均采用默认值即可。

     Busybox Settings  --->  

         Build Options  --->  

             [*] Build BusyBox as a static binary (no shared libs)  

         Busybox Library Tuning  --->   

             [*]   vi-style line editing commands 

             [*]   Fancy shell prompts  

     Linux Module Utilities  --->   

         [ ] Simplified modutils 

         [*]   insmod  

         [*]   rmmod

         [*]   lsmod 

         [*]   modprobe 

 

执行

     make

     make install

编译结束后将在busybox-1.16.0 下生成一个名为_install 目录,该目录下有4个文件。bin,sbin,usr,linuxrc。

 

2.    构建最小文件系统框架

mkdir –p /opt/Vize/fs/myfs_mini

cd /opt/Vize/fs/myfs_mini

cp –rf /opt/Vize/fs/busybox-1.16.0/_install/* .

mkdir –p dev etc lib mnt/udisk proc root sys tmp

 

向各目录添加内容

 

dev 目录

 

cd myfs_mini/dev

mknod console c 5 1

mknod null c 1 3

   

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

 

   inittab  文件内容如下

 

# /etc/inittab

::sysinit:/etc/init.d/rcS

s3c2410_serial0::askfirst:-/bin/sh

::ctrlaltdel:/sbin/reboot

::shutdown:/bin/umount -a –r

 

修改inittab 文件的属性为克执行

chmod 777 inittab

 

   /etc/init.d/rcS 文件内容如下:

 

#!/bin/sh

ifconfig eth0 192.168.1.17

 

mount -a

mkdir /dev/pts

mount -t devpts devpts /dev/pts

echo /sbin/mdev > /proc/sys/kernel/hotplug

mdev –s

 

lib 目录

 

执行如下命令

cd myfs_mini

cp –f /opt/Vize/4.3.3/arm-none-linux-gnueabi/libc/armv4t/usr/lib/*.so* lib –a

rm –f lib/libwv* lib/libuniconf*

 

其他目录可以为空目录。

至此,最小文件系统已经建立成功,用yaffs文件系统治作工具将其制成yaffs 格式的影像文件就可以烧到board 上使用了。

 

3.    增加自动挂载U盘支持

在最小根文件系统 myfs_mini的 etc 目录下新建一个 mdev.conf 的文件,内容如下:

sd[a-z]*[0-9]   0:0     0660    @(mount -t vfat -o iocharset=cp936 /dev/$MDEV /mnt/udisk)

sd[a-z]*[0-9]   0:0     0660    *(umount /mnt/udisk)

 

在myfs_mini/mnt 目录下新建一个名为 udisk 的目录

cd myfs_mini/mnt

mkdir udisk

 

然后用yaffs文件系统治作工具将其制成yaffs 格式的影像文件就可以烧到board 上。系统启动后,插上U盘,在etc/udisk 目录下就可以看到U盘的内容了。

 

4.    添加QT4图形支持

执行如下命令

cd myfs_mini

mkdir –p opt/qt-4.5/bin

cd opt/qt-4.5

cp –rf /opt/Vize/qt-4.5/__install/arm/lib .

cd lib

rm –rf *.la *.prl pkgconfig/

cd fonts

rm –rf *.pfb *.pfa

rm –rf *Deja* *helv*

rm -rf japanese_230_50.qpf micro_40_50.qpf README

 

cd /opt/Vize/fs/myfs_mini/opt/qt-4.5

cp -rf /opt/Vize/qt-4.5/__install/arm/plugins/

cd plugins

rm -rf accessible/

 

myfs_mini/opt/qt-4.5 目录下的bin 目录,就是存放qt4应用程序的目录。比如将模拟时钟的可执行文件 analogclock 放入该目录下。

 

在myfs_mini/bin 目录下新建一个名为 qt4 的脚本。内容如下:

 

#!/bin/sh

export set HOME=/root

export set QTDIR=/opt/qt-4.5

export set QPEDIR=/opt/qt-4.5

export set QWS_DISPLAY="LinuxFB:/dev/fb0"

export set QWS_DISPLAY="LinuxFB:mmWidth130:mmHeight100:0"

export set QWS_KEYBOARD="TTY:/dev/tty1"

export set QWS_MOUSE_PROTO="TSLIB:/dev/event0"

export set QT_PLUGIN_PATH=$QTDIR/plugins/

export set QT_QWS_FONTDIR=$QTDIR/lib/fonts/

export set PATH=$QPEDIR/bin:$PATH

export set

LD_LIBRARY_PATH=$QTDIR/lib:$QPEDIR/plugins/imageformats:$LD_LIBRARY_PATH

 

$QPEDIR/bin/mainwindow –qws

 

修改 qt 脚本属性

chmod 777 qt4

 

修改 myfs_mini/etc/init.d/rcS 文件,在最后一行加上

qt4 &

 

最后,将 myfs_mini 制成yaffs格式镜像文件烧写到开发板上,系统启动后就会运行analogclock 程序。

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载