当前位置: 首页 > 图文教程 > 操作系统 > Unix/Linux > 11次编译的结果

Unix/Linux
REDHAT企业版LINUX5.0安装过程图解教程
Linux系统下安装phpmyadmin方法
RedHat Enterprise Linux 5下配置Apache+Mysql+Php
Linux和Windows双系统Grub丢失恢复
Linux系统下touch命令的使用方法
linux下面建立GPRS无线MODEM拨号的方法
redhat linux AS4 下配置无线网卡
让Linux操作系统开机默认进入文本模式
Linux文件权限的设置方法与技巧
linux chown与chmod命令的区别
Linux关机命令详细说明
linux系统 加载u盘、光盘、软盘方法
Linux系统下防止 ARP 欺骗_绑定IP地址和MAC地址
Linux系统中Mysql的安装备份与密码恢复
Linux系统下添加新硬盘,分区,格式化相关步骤
Linux系统下编译安装支持NTFS的内核模块
调整Linux磁盘分区的大小的方法
正确关闭Linux计算机的命令和方法
查看Linux系统下Raid信息
Linux下单网卡绑定多IP与多网卡共用单IP 的方法

Unix/Linux 中的 11次编译的结果


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 60 ::
收藏到网摘: n/a

昨晚上编译了11次,总算基本上搞清问题所在。还是自己偷懒的结果,没有严格按照make dep,make clean,make lib_only,make user_only,make romfs,make image的顺序编译,而是make dep后直接make.后者少了关键的make clean一步,在make的时候直接用的是原来旧的romfs.o。所以不管内核怎么裁减,根文件系统还是那么多东西。
昨晚上编译了11次,总算基本上搞清问题所在。还是自己偷懒的结果,没有严格按照make dep,make clean,make lib_only,make user_only,make romfs,make image的顺序编译,而是make dep后直接make.后者少了关键的make clean一步,在make的时候直接用的是原来旧的romfs.o。所以不管内核怎么裁减,根文件系统还是那么多东西。
几点注意:1、system type -->set flash/sdram size and base addr变了以后没用,到源码里一看才知道根本没处理。直接改源码sdram size 为16M后编译通过,可上板子运行就提示“kernel BUG at slab.c:1013!”,跑飞。2、system type -->kernel executes from 由ROM改为RAM可将新的应用编进去,但没有试make clean后的效果 。3、block devices -->ram disk support-->default ram disk size由1024改为2048可将新的应用编进去。4、block devices -->ram disk support-->inital ram disk (initrd) support 加不加好像都没关系?5、busy box里的应用不要乱改,否则启动后回有问题(除非你不用)我把mount和mkdir去掉就倒了大霉。6、优龙给的uclinux源码有一个地方有错,linux-2.4.x/include/asm/arch/hardware.h第191行用了c++风格的注释,改成c风格的,可能是笔误。

下一步:1、继续想办法搞清ram disk2、继续想办法搞清image.rom和romfs.img关系,image.rom里到底有什么?3、继续裁减优化内核,李明文章里说的在linux-2.4.x的Makefile里有arm-elf-ld,怎么找不到?4、busy box支持shell脚本吗?5、读freeswan文档,搞清配置过程及要用到的文件还有文件位置。