www.goodsgy.com入门试验,制作一个简单的应用 www.goodsgy.com
www.goodsgy.com
我们使用一张软盘启动一台假象的只有一个串口,键盘输入,显示输出的x86架构的linux系统,执行的特定应用就是运行minicom,通过串口拨号。需要软件: minicom-xx.src.tar.gz 和 syslinux-xx.tar.gz,xx代表版本号,开始之前,在主目录建立一个目录,来释放这两个软件包: www.goodsgy.com
cd www.goodsgy.com
mkdir -p project/minilinux www.goodsgy.com
cd project/minilinux www.goodsgy.com
tar zxvf minicom-xx.src.tar.gz www.goodsgy.com
tar zxvf syslinux-xx.tar.gz www.goodsgy.com
1、裁减linux内核(需要系统安装内核文件包) www.goodsgy.com
配置内核的时候,我们需要选择这些:摸块编入内核,386处理器、物理内存off、支持ELF、标准PC软盘、支持RAM盘(4096)、支持 initial RAM disk (initrd)、虚你终端、虚拟终端控制台、标准串口、ext2文件系统、控制台驱动,VGA text console、DOS FAT、MSDOS文件系统,其他的都可以不要,这样内核编出来较小。 www.goodsgy.com
步骤: www.goodsgy.com
cd /usr/src/linux www.goodsgy.com
make mrproper www.goodsgy.com
make xconfig www.goodsgy.com
make dep && make bzImage www.goodsgy.com
得到 /usr/src/linux/arch/i386/boot/目录的内核文件bzIamge。 www.goodsgy.com
2、编译一个静态的minicom ,把它作为将来的linuxrc www.goodsgy.com
cd minicom-xx/src www.goodsgy.com
vi Makefile www.goodsgy.com
修改下面这行 www.goodsgy.com
minicom: $(minicom_OBJECTS) $(minicom_DEPENDENCIES) www.goodsgy.com
rm -f minicom 下面的行加上 -static,连接为静态程序 www.goodsgy.com
(LINK) -static $(minicom_LDFLAGS) $(minicom_OBJECTS) $(minicom_LDADD) $(LIBS) www.goodsgy.com
vi minicom.c www.goodsgy.com
找到 if (real_uid==0 && dosetup==0 ) 删除这个判断条件语句,主要是用于权限判断的,因为这个嵌入应用不关注权限问题,否则会出错。 www.goodsgy.com
make www.goodsgy.com
得到可执行程序,用ldd 检查一下是不是静态程序。 www.goodsgy.com
3、准备initrd压缩文件image.gz www.goodsgy.com
dd if=/dev/zero of=image bs=1k count=4096 www.goodsgy.com
losetup /dev/loop0 image www.goodsgy.com
mke2fs -m 0 /dev/loop0 www.goodsgy.com
mounmt -t ext2 /dev/loop0 /mnt/ www.goodsgy.com
mkdir -p /mnt/dev www.goodsgy.com
mkdir -p /mnt/usr/share/terminfo/l/ www.goodsgy.com
cd /dev www.goodsgy.com
cp -a consle null tty tty0 zero mem /mnt/dev www.goodsgy.com
cp -P /usr/share/terminfo/l/linux /mnt/usr/share/terminfo/l/linux www.goodsgy.com
cp ~/project/minilinux/mincom/src/minicom /mnt/linuxrc www.goodsgy.com
umount /mnt www.goodsgy.com
losetup -d /dev/loop0 www.goodsgy.com
sync www.goodsgy.com
gzip -9 image www.goodsgy.com
www.goodsgy.com
上一页 [1] [2] [3] 下一页