qemu 模拟arm
一 、参考文档:
http://www.cnblogs.com/linucos/archive/2013/03/01/2938517.html
http://blog.csdn.net/linyt/article/details/42504975
二 、安装参考文档操作遇到的问题
- 编译kernel时遇到
arch/arm/kernel/return_address.c:66:7: error: redefinition of ‘return_address’
- 当前要编译的内核文件夹下面:gedit arch/arm/include/asm/ftrace.h(P.S:如果不是ubuntu可以用vim)
源代码:extern inline void *return_address(unsigned int level)
修改为:static inline void *return_address(unsigned int level)
{
return NULL;
} - 当前要编译的内核文件夹下面:gedit arch/arm/kernel/return_address.c
源代码:void *return_address(unsigned int level)(这里是第二个return_address,里面只有return NULL一行代码)
{
return NULL;
}
修改为:全部注释掉,或者删除掉
参考解决方案http://blog.csdn.net/u014525494/article/details/53608276
- 编译qemu
‘ERROR: pixman >= 0.21.8 not present.’,原因相关依赖包未安装,可使用sudo apt-get cache search 搜索缺少的包
参考解决方案http://mltyrone.blog.51cto.com/6204409/1833903/
- 编译busybox
error: storage size of rlimit_fsize’ isn’t known struct rlimit rlimit_fsize
参考解决方案
在busybox根目录下查找到文件:find -name libbb.h
在libbb.h.h中包含sys/resource.h
说明:
上述错误的原因是rlimit结构体未知,原因是相应头文件没有包含,rlimit结构体位于sys/resource.h文件和linux/resource.h
- kernel启动时显示VFS: Mounted root (ext3 filesystem) readonly,无法写文件系统
修改启动参数,添加rw权限 ”noinitrd root=/dev/mtdblock3 rw init=linuxrc console=ttySAC0,115200“