2017-2018-1 20145237、20155205、20155218 实验一 开发环境的熟悉
组员博客:
http://www.cnblogs.com/haoliberale/
http://www.cnblogs.com/xzh1996/
实验目的,实验步骤
开发化境的熟悉-1-交叉编译环境-(使用实验室台式机)
建立实验目录"mkdir linux_组员1学号_组员2学号"
6. 在实验目录中编写“hello word”程序,另外补充几行打印所有组员的学号姓名
7. 参考bocsd目录中的脚本armc.sh, 分别用gcc和交叉编译器arm-none-linux-gnuenbi-gcc编译hello.c,用gcc编译的可执行文件命名linuxhello:gcc hello.c -o linuxhello; 用arm-none-linux-gnuenbi-gcc编译的命名为armhello: /usr/local/toolchain/toolchain4.3.2/bin/arm-none-linux-gnuenbi-gcc hello.c -o armhello
开发化境的熟悉-2-目标机宿主机联通
根据娄老师提供的实验图文视频教程,连接arm开发板,建立超级终端,用ifconfig在命令行查看IP并ping通。
- 在超级终端中用“mkdir /arm_组员1学号_组员2学号” 建立实验箱中程序运行目录“arm_组员1学号_组员2学号”
- 在超级终端中运行“mount -t nfs -o nolock 宿主机IP:/home/linux/linux_组员1学号_组员2学号 /arm_组员1学号_组员2学号”通过NFS把宿主机中的“linux_组员1学号_组员2学号” 映射到目标机中的“/arm_组员1学号_组员2学号”
- 超级终端中运行"cd /arm_组员1学号_组员2学号"
- 超级终端中运行"./armhello", 提交运行截图,并深入理解交叉编译
开发化境的熟悉-3-目标机运行程序
- 在超级终端中用“mkdir /arm_组员1学号_组员2学号” 建立实验箱中程序运行目录“arm_组员1学号_组员2学号”
- 在超级终端中运行“mount -t nfs -o nolock 宿主机IP:/home/linux/linux_组员1学号_组员2学号 /arm_组员1学号_组员2学号”通过NFS把宿主机中的“linux_组员1学号_组员2学号” 映射到目标机中的“/arm_组员1学号_组员2学号”
- 超级终端中运行"cd /arm_组员1学号_组员2学号"
- 超级终端中运行"./armhello", 提交运行截图,并深入理解交叉编译
开发化境的熟悉-4-目标机模块分解
. 在目标机上重现上周“系统调用版的myod”
2. 以静态库或共享库的方式在目标机上重现上周“系统调用版的myod”
3. 提交超级终端中的运行截图
这个任务可以推迟提交,但是由于我们组做之前的项目较为顺利,所以本次实验也做完了这个项目。
开发化境的熟悉-5-清理工作(只有用实验室机器的小组做)
实验结束后,把实验室原来的网线插回,否则以后做实验的同学无法开机,提交插好网线的照片。
实验中的问题及解决过程
解决方案:
要先输入root进入,再ifconfig查看ip。
这个问题遇到时我们尝试了许多方案也没解决,询问其他同学发现他们也出现了同样的问题,之后此问题在老师的协助下解决了。
解决方案:将etc/exports中的exp改为自己的文件夹名称
更改语句:sudo vi /etc/exports
新学到的知识点
- 交叉编译
- 宿主机与目标机
- NFS
- 超级终端
- file命令