linux2.6.12.2内核版本移植yaffs2如何编译linux内核出错 求助!

论坛提示 ARM9之家论坛 提示信息论坛维护中,请稍后访问,给您带来的不便,敬请谅解!
开发板销售: 售后客服: Powered by如何使linux内核2.6.31支持yaffs2文件系统
下载解压yaffs2文件系统到当前目录。
tar zxvf yaffs.tar.gz -C./
然后进入yaffs2目录:
#cd& cvs/yaffs2/
给内核打上yaffs2文件系统的补丁,执行:
#./patch-ker.sh& c&
/………/linux-2.6.31/ &—这个是你的内核源码的目录
这时内核源码fs目录下多了一个yaffs2目录,同时Makefile文件和Kconfig文件也增加了yaffs2
配置和编译条件。
make menuconfig配置对 yaffs2& 支持
File& systems&
DOS/FAT/NT& Filesystems&
&*&& MSDOS&
fs& support&
&*&& VFAT&
(Windows95)& fs&
Miscellaneous& filesystems&
&*&& YAFFS2&
file& system&
[*]& Autoselect&
yaffs2& format&
配置语言选项:
Native& Language&
support& ---&&
(iso8859-1)& Default&
NLS& Option&
&*&& Codepage&
437(United& States,&
&*&& Simplified&
Chinese& charset(CP936,&
ISO8859-1& (Latin&
1;& Western&
European& Language)
&*&& NLS& UTF-8
&现在内核已经支持NandFlash和yaffs2文件系统,将内核烧入NandFlash后,再烧入yaffs2&
文件系统,可以使用制作好的文件系统,也可以自己制作
启动时(成功挂载文件系统)输出:
yaffs:& dev& is&
is& "mtdblock2"
yaffs:& passed&
yaffs:& Attempting&
MTD& mount& on&
31.2,& "mtdblock2"
yaffs:& auto&
selecting& yaffs2
yaffs_read_super:&
isCheckpointed& 0
VFS:& Mounted&
root& (yaffs&
filesystem)& on&
device& 31:2.
Freeing& init&
memory:& 196K &
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。移植yaffs2时failed to execute linuxrc该如何解决?急急!!
我现在移植u-boot-1.2.0+linux2.6.27.7+yaffs2(arm-linux-gcc4.3.2版本,busybox-1.13.3) 就遇到了关于文件系统启动不了的问题,向你请教一下:内核启动的时候到了本文说的第三点就不动了提示信息:yaffs: dev is
name is &mtdblock2&yaffs: passed flags &&yaffs: Attempting MTD mount on 31.2, &mtdblock2&yaffs_read_super: isCheckpointed 0VFS: Mounted root (yaffs filesystem).Freeing init memory: 132KWarning: unable to open an initial console.Failed to execute /linuxrc.  Attempting defaults...Kernel panic - not syncing: No init found.  Try passing init= option to kernel.我内核配置的时候boot option--&内容为root=/dev/mtdblock2 noinitrd rootfstype=yaffs console=ttySAC0,115200 mem=64M init=/linuxrc rw我移植的文件系统的根目录下面有linuxrc它指向/bin/busybox#file busybox的结果为$ file bin/busybox bin/busybox: ELF 32-bit LSB executable, ARM, version 1, for GNU/Linux 2.0.0, statically linked, stripped在bin/文件夹下面有sh属性如下:lrwxrwxrwx 1 xwq xwq       7
21:19 sh -& busybox在sbin/文件夹下面也有init属性为:lrwxrwxrwx 1 xwq xwq 14
21:19 sbin/init -& ../bin/busybox请问下:我这个问题咋回事,咋个解决!!谢谢!!
09-12-20 &匿名提问
从控制面板--添加组件--把IIS先卸载掉。再重新装IIS就可以解决问题了。  0
请登录后再发表评论!
移植原义指将植物移动到其他地点种植,后引申为将生命体或生命体的部分转移,将身体的某一部分,通过手术或其他途径迁移到同一个体或另一个体的特定部位,并使其继续存活的方法。软件工程中,程序往往被视为有生命的机体,将源代码从一种环境下放到另一种环境下运行也可以称为移植。   如果被移植生命体部分的新载体同原来的载体差异很大,则这种移植一般叫做嫁接,例如将苹果树的枝嫁接到桃树上。  人体移植是将自体或异体的细胞、组织和器官,移植到身体的某一部位,以恢复被破坏器官或组织的解剖结构和功能,移为移植术。  输血是最早采用的细胞移植,以后发展了组织移植,如皮肤、粘膜、大网膜、骨髓、脂肪、筋膜、肌肉、肌腱、血管、神经、骨和软骨等移植。由于显微外科和免疫抑制药物的发展可,器官移植进展很快。  (一)皮肤移植的术后护理要点:  植皮的肢体要限制活动,以免皮片移动影响存活,并抬高患肢。保持包扎敷料的清洁和干燥,如被大小便沾污应立即更换。告知病人不可抓摸创面,病儿双手应加约束。经常观察创面,如皮片下积有脓血,应立即用正确处理。  (二)断肢再植的护理要点:  1、消毒隔离和预防感染措施  术后病人住单间病房,室内空气和器物均须消毒,室温维持在20-25度,湿度为50%-60%,有专人护理,限制探视人员。采用抗生素预防感染,但尽量用肌肉注射,以防产生静脉血栓。
请登录后再发表评论!
我晕这都回答的个啥子东西哦!
请登录后再发表评论!yaffs2 老版本不支持2.6.36以上内核。&网上下载的yaffs2常见版本(点击下方的进行下载)一般不支持2.6.36/37。但2.6.36一下版本依然可以使用。
&&&&&&& 最新的yaffs2采用git发布,利用git工具下载到最新的yaffs2源代码,即可支持。办法是使用到发
布的git方法获得最新版,并且查看readme确认其支持2.6.36/37。yaffs有一个较大的变化,是在2.6.36/37内核发布之后的一段
时间里出现的,主要就是patch-ker.sh多了一个参数,m/s 是选择multiversion支持,还是singleversion支持。
===============================================================&
(1)下载源代码
如果系统已经安装git工具,就直接执行:
git clone git://www.aleph1.co.uk/yaffs2
如果没有git工具,请首先下载安装git()。当然,也可以在windows下用git工具下载。
&(2)给内核打补丁
yaffs源代码下载完后,放到某个目录下(但不要放在内核目录下!&&& )进入yaffs源代码目录:
#cd yaffs2
#./patch-kernel.sh&&& c&&& m&&&& ../linux-2.6.37
(3)然后配置内核:
& #cd& ../linux-2.6.37& &返回内核根目录
#make menuconfig
File systems --&
Miscellaneous filesystems --&
&*& YAFFS2 file system support
&&(4) 重新编译内核
=======================
&需要注意:因为windows中下载导致文件编码和linux的不同。所以,如果是在windows下用git下载并传递到linux下的,则需要修改两个文件的编码:
&& (1) 在linux下,进入yaffs2源代码目录
& #vi&& patch-kernel.sh
&& 然后在vi中执行如下命令:
&:set& ff=unix
然后修改权限使patch-kernel.sh具有可执行权限:
#chmod&& 755& patch-kernel.sh
&(3)修改fs/yaffs2/Kconfig的编码
&#vi& fs/yaffs2/Kconfig
在vi中执行命令:
:set& ff=unix
阅读(...) 评论()当前位置: >
> Linux3.4内核
Yaffs2文件系统的移植
Linux3.4内核
Yaffs2文件系统的移植
时间:作者:华清远见
【实验目的】
Yaffs2文件系统是嵌入式系统中常用到的一种文件系统,是也是移植Android所必须的。通过向FS_S5PC100平台移植Yaffs文件系统,了解Linux3.4的新特性。
说明:在本系统移植课程实验中命令行提示符“$”表示是在主机上执行,“#”表示在目标板执行。
【实验环境】
主机:Ubuntu 10.10 (64bit);
目标机:FS_S5PC100平台;
交叉编译工具链:arm-eabi-4.4.0(Android4.0.4自带交叉工具链);
【实验步骤】
1. 添加驱动文件
因为内核版本的变化,内核中mtd_info结构体发生变化,而Yaffs2文件系统并没有做相应的修改。
拷贝修改好的驱动文件到内核中fs/yaffs2目录下:
&&&&&&&&$ cp *.c fs/yaffs2/
2. 配置内核
menuconfig
File systems
&&&&&&&&&&&&&&&&[*] Miscellaneous filesystems
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&*&
YAFFS2 file system support
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&-*-
512 byte / page devices
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&-*-
2048 byte (or larger) / page devices
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&[*]
Autoselect yaffs2 format
3. 编译内核
编译内核并拷贝到tftpboot下。
$ makezImage
&&&&&&&&$ cp arch/arm/boot/zImage
启动开发板,输入下面命令。
/proc/filesystems
如果显示yaffs和yaffs2即说明内核支持Yaffs文件系统。
评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
学院新动态

我要回帖

更多关于 深入理解linux内核 的文章

 

随机推荐