linux2.6.20内核编译成功,也可以在skyeye运行,但有个问题
我的linux2.6.20内核编译成功,也可以在skyeye运行,但有个问题就是编译的内核vmlinux为什么很大啊,要20多兆,而skyeye测试程序中的vmlinux才几兆啊。
该如何才能给内核瘦身啊
请教高手。:P
我的交叉工具链是arm-linux-gcc-4.4.3
内核版本是linux-2.6.20.20
[ 本帖最后由 tiddy8 于 2010-11-21 19:20 编辑 ]
回复 1# tiddy8 的帖子
这是由于你编译的内核映像vmlinux带有源码,而skyeye的测试用例中的vmlinux是不带源码的。"瘦身" vmlinux处理方式有两种:
1.在编译内核的时候,配置参数将源码去掉。
make menuconfigure 配置内核
Kernel hacking--->Kernel debugging将此项关掉
重新编译内核即可。
2. 如果已经生成了带有源码的vmlinux,那就用相应体系的交叉
工具链中的strip工具将vmlinux“瘦身”
例如arm的vmlinux:$ arm-linux-strip vmlinux
再看下,原来几十M的文件就变成几M了
(注意,此方法不可逆,如若带源码,及不带源码的都需要,最好
备份一下带源码的vmlinux)
其实,带源码的内核映像也是需要的,一般要进行内核debug的时候,需要它。
thanks,
yuanzheng.
[ 本帖最后由 tsinghuayuan86 于 2010-11-22 16:59 编辑 ] 原帖由 tsinghuayuan86 于 2010-11-22 16:58 发表 http://www.linuxfans.org/bbs/images/common/back.gif
这是由于你编译的内核映像vmlinux带有源码,而skyeye的测试用例中的vmlinux是不带源码的。
"瘦身" vmlinux处理方式有两种:
1.在编译内核的时候,配置参数将源码去掉。
make ...
谢谢,这个问题解决了。
回复 1# tiddy8
可以编译最新的2.6.38的内核么?期待回复 4# 戴尔_章 的帖子
你可以尝试编译下,再在skyeye run下,应该不会有太大问题。thanks,
yuanzheng.
页:
[1]