由于编译goldfish3.4内核源码,发现在编译到Yaffs2文件系统时出错,根据出错信息,发现是由于新内核中的一些数据结构和成员名发生变化引起的,可以通过两种途径来修改编译:
第一种方式是参考http://blog.csdn.net/mr_raptor/article/details/8250819 做修改,并生成patch供以后使用:yaffs2-3.4.patch
第二种方式最靠谱,就是直接使用Yaffs2官方的代码 http://www.yaffs.net/download-yaffs-using-git 来替换goldfish3.4内核中的Yaffs2代码,步骤如下:
-
git clone git://www.aleph1.co.uk/yaffs2 (clone代码)
-
cd yaffs2 && cat README-linux-patch (进入源码目录并查看使用说明)
-
mv ~/android/kernel/goldfish/fs/yaffs2/ ~/android/kernel/goldfish/fs/yaffs2_kernel (重命名内核中的yaffs2)
-
./patch-ker.sh c m ~/android/kernel/goldfish/ (将官方yaffs2代码copy到内核源码中)
-
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- (开始编译)