在配置busybox,在是否选择要静态链接库时,在静态下,busybox中的工具不需要动态链接库,能够直接运行.而用户自己编写的程序如果需要动态链接库,还是依然需要有.
如果是动态链接库,则busybox和用户自己编写的程序都需要动态链接库.
这里,因为我们以后需要使用自己编写的程序,故选择使用动态链接库.
busybox 要支持mdev、Tab补全功能、insmod模块安装命令、ifconfig命令等.
Busybox Settings
Busybox Library Tuning
Tab completion
然后就是编译、安装.安装的时候一定要跟上路径,不然很有可能破坏电脑的文件系统.
修改Makefile
CROSS_COMPILE ?= arm-linux-
make
make CONFIG_PREFIX=/work/nfs_root/first_fs install
bootargs = noinitrd root=/dev/mtdblock3 init=/linuxrc console=ttySAC0
构建最小文件系统.
首先创建最基本的设备文件.(/dev/console和/dev/null).
在pc上查看当前电脑的设备号.
zws@z-pc:/home/jz2440/fsroot$ ls /dev/console -l
crw------- 1 root root 5, 1 10月 22 12:45 /dev/console
zws@z-pc:/home/jz2440/fsroot$ ls /dev/null -l
crw-rw-rw- 1 root root 1, 3 10月 22 12:45 /dev/null
然后在相应的文件夹中创建对应的设备文件.
mkdir dev
cd dev/
sudo mknod console c 5 1
sudo mknod null c 1 3
构造inittab
mkdir etc
cd etc/
touch inittab
console::askfirst:-/bin/sh
构建C库
mkdir lib
cp ..../arm-linux/lib/*.so* ./ -D
完成最小根文件系统的构建.
使用 mkyaffs2image 制作文件系统.
tftpboot 30000000 fsroot.yaffs2
nand erase root
nand write.yaffs 0x30000000 root $(filesize)
最小文件系统完成.
支持PS命令.
mkdir sys
mkdir proc
mdkir etc/init.d
tocuh etc/init.d/rcS
一般的是ext3吧现在
补充一下一楼的回答,现在使用比较多的还有yaffs2文件系统,长用于嵌入式系统
linux文件系统格式挺复杂多样的,如ext、ext2、ext3、ext4、jsf、 、xfs、ReiserFS等.
一般情况下,linux根分区文件系统多数用ext3、ext4,安装时你可以选择.
可以确定的有两个问题:
①你的网关设置有错误
网关是一个确定的IP,不应该是25⑤25⑤25⑤25⑤
可以不设置网关.
但这个错误不会造成引导失败
②你的内核编译有问题
你可以在编译内核前,首先清理一下环境:
比如:make
clean
或者
distclean,
这个和具体的开发包相关,各家都一些小差别,看说明文档.
内核编译:
menuconfig配置相应的平台,然后保存退出直接make命令就可以编译了.
文件系统制作:
menuconfig配置你想要的属性,然后保存退出,make就可以了,然后make
install就会在目录下看到__install的目录就是你要的根文件系统目录了.
以上就是土嘎嘎小编大虾米为大家整理的相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!