2017-2018-1 20155207 20155211 20155223 实验一 开发环境的熟悉
2017-2018-1 20155207 20155211 20155223 实验一 开发环境的熟悉
一、实验内容
- 交叉编译环境
- 目标机宿主机联通
- 目标机运行程序
- 目标机模块分解
- 清理工作
二、实验具体内容
实验一:交叉编译环境(自带笔记本)
- 安装老师所给文件夹目录中的VMware-workstation-full-10.0.1-1379776.exe。
- 安装老师所给文件夹目录中的Ubuntu1204.rar。
- 用VM打开Ubuntu。用户名:linux,口令:1。
- 建立实验目录。使用Linux命令mkdir Linux_20155207_20155223直接在/home/目录下建立文件夹。
- 编写hello.c,"Hello World!"之后输出一行组员学号:
#include <stdio.h>
int main()
{
printf("Hello,World!\n");
printf("20155207 & 20155223\n");
return 0;
}
截图:
实验二:目标机宿主机联通
- 使用自己笔记本电脑的,解压超级终端软件“windows7st(Windows).rar”,并在桌面上建立快捷方式。
- 使用自己笔记本电脑的,到实验室把“USB转串口线”的USB口插入自己的电脑,把串口连到实验箱的COM4
- 参考视频配置超级终端,用超级终端作为实验箱的显示终端。
-.用ifconfig在超级终端中查看实验箱IP(目标机),在Ubuntu中(宿主机)中用ifconfig在命令行查看IP。获得实验箱IP:192.168.0.232、VM Ubuntu IP:192.168.0.230. - 用网线连接实验室台式机(或自己笔记本电脑)和ARM实验箱的网口NET1(最大屏旁边的)。
- 用ping命令保证目标机和宿主机能互相ping通,提交ping通的截图。在超级终端中输入:ping 192.168.0.230,在VM Ubuntu命令行中输入:ping 192.168.0.232以使两机相互ping通。
截图:
实验三:目标机运行程序
- 在超级终端中运行mount -t nfs -o nolock 192.168.0.230:/home/linux/exp /exp通过NFS把宿主机中的/home/linux/exp 映射到目标机中的/exp。
- 在超级终端中cd /exp。
- 在超级终端中./armhello运行armhello。
截图:
实验四:目标机模块分解
- 在实验箱上实myod。
- 用静态库或共享库在实验箱上实现myod。
截图:
实验五:收拾干净
- 将所有拿出来使用的线都收拾好。
截图:
所遇难题
- 问题1:笔记本不能和实验箱ping通。
- 解决办法:我无法解决问题1,因为我尝试多次重连,但是笔记本和实验箱就是不能ping通。此情况下,我只能选择同另外一个小组合作完成实验。另一小组成员:20155201、20155313.
收获新知
交叉编译
简单来说,就是在一个平台上生成另一个平台上的可执行代码。通常被生成可执行代码的平台都是不能在其自身上进行编译的的平台。在本次实验中,实验箱上的ARM便是被生成可执行代码的平台。
目标机和宿主机
在嵌入式编程中,宿主机是编译、链接可执行程序的机器,这类机器通常是现在人手一台的PC;目标机是执行可执行程序的机器,本次实验中ARM实验箱是目标机。
NFS
NFS是网络文件系统(Network File System)的缩写,系统包括一台NFS服务器和多台与之相连的计算机。任意两台计算机可以通过得知对方IP地址,在各自控制台输入ping 对方IP的方式相连。相连的两台电脑可以共享资源。
超级终端
超级终端,即计算机显示终端,是计算机系统的输入、输出设备。
File命令
file命令可以搜索相关的文件类型。