大学实验报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

浙江大学实验报告

课程名称:嵌入式原理实验类型:计算机实验

实验项目名称:实验四熟悉交叉编译环境和开发工具

学生姓名:何斯琼、姚冠红专业:计算机学号:3043027075、3043027076

同组学生姓名:指导老师:陈文智

实验地点:东四五楼嵌入式实验室实验日期:2007 年 3 月 5 日

实验目的和要求(必填)

目的:熟悉交叉编译环境和开发工具

实验内容和原理(必填)

对交叉编译工具进行熟悉和运用。

主要仪器设备

PC机

操作方法与实验步骤

进入/home/student/XSBase/XSBase255_Linux_B/Toolchain;

解压缩hybus-arm-linux-R1.1.tar.gz;

将解压缩得到的文件夹复制到/usr/local/下;

进入/root, 执行ls –a, 可见隐藏文件.bash_profile;

用vim编辑器编辑此文件:将$PA TH=/bin: /usr/local/hybus-arm-linux-R1.1/bin;

再执行命令source .bash_profile已更新此文件;

此时arm-linux-gcc命令(即交叉编译指令)已经可以执行;

以下为我们进行此实验时的全部过程:

[student@localhost student]$ su

Password:

[root@localhost student]# ls

XSBase

[root@localhost student]# cd XSBase/

[root@localhost XSBase]# ls

XSBase255_Linux_B

[root@localhost XSBase]# cd XSBase255_Linux_B/

[root@localhost XSBase255_Linux_B]# ls

app Datasheet Filesystem Image Kernel Source Toolchain BootLoader Documents GDB Jflash-XSBase255 RPM Tiny-X

[root@localhost XSBase255_Linux_B]# cd Toolchain

[root@localhost Toolchain]# ls

hybus-arm-linux-R1.1 hybus-arm-linux-R1.1.tar.gz

[root@localhost Toolchain]# tar -zxf hybus-arm-linux-R1.1.tar.gz

[root@localhost Toolchain]# ls

hybus-arm-linux-R1.1 hybus-arm-linux-R1.1.tar.gz

[root@localhost Toolchain]# pwd

/home/student/XSBase/XSBase255_Linux_B/Toolchain

......cp -a /usr/local/hybus-arm-llinux-R1.1

[root@localhost /]# ls

bin dev home lib misc opt root tmp var

boot etc initrd lost+found mnt proc sbin usr

[root@localhost /]# cd root

[root@localhost root]# ls

anaconda-ks.cfg install.log install.log.syslog minicom.log

[root@localhost root]# ls -a

. .bash_logout .gconf .gnome2_private install.log.syslog .xauthylGYor

.. .bash_profile .gconfd .gstreamer minicom.log .Xresources

anaconda-ks.cfg .bashrc .gnome .gtkrc .tcshrc

.bash_history .cshrc .gnome2 install.log .viminfo

[root@localhost root]# vi .bash_profile

[root@localhost root]# source .bash_profile

[root@localhost root]# ls

anaconda-ks.cfg install.log install.log.syslog minicom.log

[root@localhost root]# cd ..

[root@localhost /]# ls

bin dev home lib misc opt root tmp var

boot etc initrd lost+found mnt proc sbin usr

实验数据记录和处理

此实验无实验数据。

实验结果与分析(必填)

编写简单helloworld程序,用命令arm-linux-gcc命令进行交叉编译,通过并生成工程,表明此实验成功。

分析:目标文件在不同构架间由于采用的CPU指令集不同等原因不能通用。比如X86架构的程序不能运行于ARM架构的XSBase255目标机。而且,通常在一个架构下会有多个操作系统,不同的操作系统会使用不同的目标文件格式,所以不能采用X86架构下的编译程序对程序进行编译,而需要用对应ARM架构XSBase系统的交叉编译器进行编译,再把生成的目标文件传输到目标机上进行执行。

讨论、心得

通过这次实验,我们不仅明白了交叉编译的概念和必要性,也熟悉了如何使用交叉编译指令,并且也熟悉了不少linux指令,比如知道了改变了.bash_profile以后得用source .bash_profile 指令激活,并且重启终端后也得重新执行此指令。

我们在做实验的过程中遇到了很多困难,因为我们对linux本身都并不熟悉,对linux指令也仅局限于ls之类最基本的指令,但是在实验的过程当中,我们发现耐心是最重要的,并且要带着为什么的疑问去做实验,而不是照着书上的步骤一步一步机械进行。

相关文档
最新文档