我发现,但凡我要学个东西,就会一个接着一个坑地踩,尤其是在学嵌入式Linux开发时。
我师傅董工对我说,你踩的坑越多,学的本事越多(微笑)
———————————————————————————————————————————
又一个大坑
参考笔记,感谢这位大佬。
Linux内核移植笔记 | 04 - 移植Linux 3.4.2 内核到JZ2440(移植支持yaffs2文件系统)_yaffs2utils官网-CSDN博客
目前时间为2024年8月8日。
在通过git下载了yaffs2文件,并使用补丁脚本,将yaffs2添加到了linux kernel(4.4.154)中。
在使用git clone yaffs2时,切记要在ubuntu中来,不然windows中文件格式跟ubuntu中文件格式不同,会报错。
在通过make menuconfig让linux kernel支持yaff2后,重新开始编译内核,结果,,,,结果就报错了,很多的错。。。
通过上网查,原因是yaffs2更新比linux更新慢,导致yaffs2中使用的函数,结构体在linux中已经被更改成其他的了。
在各种编译不过以后,我想多一个招,我想试试Linux 4.9.88能不能编译通过,然而有趣的事情来了,竟然编译通过了(增加了yaffs2支持)
在fs/yaffs2/yaffs_vfs.c中
这么一看,目前的yaffs2版本最多是可以支持到4.8.0的,但为啥我的4.4.154不可以呢,,,而且4.9.88却可以。。。
会不会是另外一种情况,yaffs2支持的linu版本比4.4.154新,比4.9.88旧,,,,或者说,yaffs2向下兼容性不好。。。等待再一次尝试。