在Linux 2.6.38.8上移植yaffs2文件系统


开发平台:Ubuntu 11.04

Yaffs2源码包:yaffs2.tar.bz2

yaffs2.tar.bz2 下载地址:

免费下载地址在 http://linux.bkjia.com/

用户名与密码都是www.bkjia.com

具体下载目录在 /pub/常用工具/DiskGenius-磁盘管理与数据恢复软件最新版/

通过以下命令即可在Linux-2.6.38.8上成功移植yaffs2文件系统(以下命令都是基于内核源码目录linux-2.6.38.8和yaffs2源码包yaffs2.tar.bz2在Ubuntu的同一目录下)。 

  1. $ tar jvxf yaffs2.tar.bz2  
  2. $ cd yaffs2/  
  3. $ ./patch-ker.sh c m ../linux-2.6.38.8  
  4. $ cd ../linux-2.6.38.8/  
  5. $ make menuconfig  //把yaffs2配置进内核   
  6.  File systems --->  
  7.      [*] Miscellaneous filesystems --->  
  8.          <*> yaffs2 file system support  
  9. $ make  

    如果你在以前移植yaffs2时出现下面类似的错误信息,那说明你的yaffs2源码包太老了,与新版本内核已经不兼容了,因为不同版本的内核有些结构体和函数是不太一样的。 

  1. fs/yaffs2/yaffs_fs.c:290: warning: initialization from incompatible pointer type  
  2. fs/yaffs2/yaffs_fs.c:349: warning: initialization from incompatible pointer type  
  3. fs/yaffs2/yaffs_fs.c:362: error: unknown field 'delete_inode' specified in initializer  
  4. fs/yaffs2/yaffs_fs.c:362: warning: initialization from incompatible pointer type  
  5. fs/yaffs2/yaffs_fs.c:363: error: unknown field 'clear_inode' specified in initializer  
  6. fs/yaffs2/yaffs_fs.c:363: warning: initialization from incompatible pointer type  
  7. fs/yaffs2/yaffs_fs.c: In function 'yaffs_delete_inode':  
  8. fs/yaffs2/yaffs_fs.c:573: error: implicit declaration of function 'clear_inode'  
  9. fs/yaffs2/yaffs_fs.c: In function 'yaffs_setattr':  
  10. fs/yaffs2/yaffs_fs.c:1523: error: implicit declaration of function 'inode_setattr'  
  11. fs/yaffs2/yaffs_fs.c: In function 'yaffs_internal_read_super':  
  12. fs/yaffs2/yaffs_fs.c:2100: error: implicit declaration of function 'init_MUTEX'  
  13. make[2]: *** [fs/yaffs2/yaffs_fs.o] Error 1  
  14. make[1]: *** [fs/yaffs2] Error 2  
  15. make: *** [fs] Error 2  

    可以通过GIT获得最新的yaffs2源码包,至于如何操作,在yaffs2的官网上( http://www.yaffs.net/node/346 )已有说明。

  1. $ sudo apt-get install git  //Ubuntu上先安装git   
  2. $ git clone git://www.aleph1.co.uk/yaffs2  //当前目录下的yaffs2目录就是新下载的最新版本的yaffs2  

相关内容