原文 http://blog.csdn.net/maxwell_nc/article/details/44454547
前言
原创文章欢迎转载,请保留出处。
若有任何疑问建议,欢迎回复。
邮箱:Maxwell_nc@163.com
紧接着第一篇(http://blog.csdn.net/maxwell_nc/article/details/44279553),我们使用网络文件系统NFS挂载根文件系统,这里我们采用友善之臂提供的带Qtopia的根文件系统(请到mini2440附带的光盘找到rootfs_qtopia_qt4-20140103.tar.gz或者网上下载一份)你也可以使用buildroot生成的根文件系统,甚至可以用busybox自己制作一个。
更新内容
日期:2015年5月27日 发现bootargs语句有错,现已更正。另外修改了一些错别字
NFS挂在根文件系统
首先安装nfs服务
sudo apt-get install nfs-kernel-server
新建nfsroot文件夹
mkdir /nfsroot
然后配置nfs目录
vi /etc/exports
添加一行 /nfsroot *(rw,sync,no_root_squash,no_subtree_check)
然后执行/etc/init.d/nfs-kernel-server restart
启动服务。
进入NFS共享目录cd /nfsroot/
修改权限chmod -R 777 ./
解压根文件系统tar xvzf rootfs_qtopia_qt4-20140103.tar.gz
注意:友善之臂提供的qtopia文件系统在挂载时会初始化网卡,但我们是由nfs挂载的文件系统,这会导致nfs连接中断,挂载失败,所以用nfs挂载之前需要把网卡的初始化过程取消,对应的文件是/etc/init.d/if-config,只需把该文件内容删除即可(删除文件也可以)。
- 1
- 2
- 3
- 1
- 2
- 3
创建虚拟网卡并配置ip
- 1
- 2
- 3
- 1
- 2
- 3
带网络方式启动qemu
- 1
- 1
(注意:关闭Qemu后用ifconfig tap0 192.168.42.1 down
卸载网卡)
启动后进入uboot模式,此时的qemu还不能显示,输入下面指令加载内核和根文件系统。
- 1
- 2
- 3
- 4
- 1
- 2
- 3
- 4
之后就能启动Qtopia,如下图:
下期将会展示如何独立编译移植gdbserver和arm-Linux-gdb,虽然我们编译的buildroot已经带有gdb(默认7.41版本),但是由于发现独立编译gdb会出现一些奇怪问题,所以还是拿出来和大家分享下独立编译可能出现错误的经验,后续文章可以看我的博文。