之前详细搭建过程应该是烂尾了,后面有些许的具体具体步骤没有来得及记录。建议读者,可直接使用本文所搭建好的环境。
下面将分别介绍QEMU搭建好的两种开发环境:
1、QEMU仿真的MINI2440开发板开发环境
2、QEMU仿真的Vexpress V9开发板开发环境
所有的命令尽量在root模式下进行!!!
一、QEMU在Xubuntu仿真Mini2440 使用方法
交叉编译工具链:arm-linux-gcc-4.3.2
linux内核:2.6.32
下载搭建好的环境可到网盘下载,<传送门>提取码:fn9q
【虚拟机版本是15.5.0 build-14665864
,一并上传云盘】
1、下载并安装虚拟机、解压Xubuntu镜像到合适的目录
2、开启虚拟机并打开镜像文件,其中若提示是否移动虚拟机的对话框,选择“我已复制该虚拟机”类似的选项。【开机密码:111111】
3、启动后,可以看到如下界面(终端已进入root模式,终端密码:111111)
接下来可按照虚拟机桌面文档详细操作,或者按照本文继续操作。
【切记】:
①、终端要最小化,并放到屏幕右下角
②、要进入root模式操作。
否则会发生不可预知的错误!!!
4、在终端输入cd /opt/micro2440/mini2440
5、输入./mini2440_start.sh
6、在终端继续输入如下内容
set bootargs noinitrd root=/dev/nfs rw nfsroot=10.0.0.1:/opt/root_qtopia ip=10.0.0.10:10.0.0.1::255.255.255.0 console=ttySAC0,115200 mini2440=1tb
7、输入bootm
,即可运行成功。
8、按下ctrl+shift+t
打开另一个终端,输入ping 10.0.0.10
测试板子和虚拟机之间的通信。
【输入ctrl+c
结束ping】
9、ping通之后,输入telnet 10.0.0.10
登录到虚拟的开发板上,当出现FriendlyARM login:
输入root
10、虚拟开发板运行hello world
再开启一个终端,进入宿主机(虚拟机)的/opt/micro2440/code/app
目录下,可以看到有一个main.c
输入arm-linux-gcc main.c
,进行交叉编译main.c
,并生成a.out的ARM可执行文件。
显然这个可执行文件在我们的虚拟机,即×86架构上是不能运行的。
读者若有兴趣,可尝试使用
gcc main.c
生成a.out文件,看看是否可以在虚拟机上运行。
但是当我们把它放到虚拟开发板上时,便可以运行。将a.out拷贝到根文件系统目录下,即cp a.out /opt/root_qtopia/work/
回到telnet登录开发板的终端界面,并进入work目录,即cd work
,发现a.out确实拷贝过来了。
然后输入./a.out
,可以看到输出了结果!
说明了我们的环境搭建移植是成功的。
二、QEMU在Xubuntu仿真VexpressV9 使用方法
大体跟Mini2440类似,主要是文件所在目录的差异,下面一并详细列出
1、同前所述,正确下载并打开镜像。开机密码是123456,ROOT密码123456
2、输入cd /home/tftpboot
3、输入sudo ./boot-nfs.sh
即可运行!
4、虚拟开发板运行输出hello world
打开另一个终端,进入/home/tftpboot/code/app
,然后输入arm-linux-gnueabi-gcc main.c
交叉编译生成a.out文件,随后输入cp a.out /home/nfs/work
,将生成的a.out文件拷贝到文件系统中的work文件夹。
然后在虚拟开发板所在终端输入,cd work
,随后输入./a.out
即可看到输出结果!