嵌入式实验报告 专业:电子信息工程 学号:201316010 姓名:张岩
嵌入式实验报告四
一、实验目的:
1.嵌入式文件烧写;
2.通过上机实验,使学生验证、巩固和充实所学理论知识,加深对相关内容的理解,了解嵌入式操作系统的交叉编译方法。 二、实验要求:
1.安装交叉编译工具包cross-armtools-linux;
2.用交叉编译工具arm-linux-gcc重新编译生成实验二中C语言程序。 三、问题:
1.简述string、strip工具的作用。
答:string工具可以实现对字符串进行赋值,连接,复制,查找,交换。
strip工具可以除去行号信息,重定位信息,符号表,调试表,typchk段和注释段。 2.用file命令观察使用gcc和arm-linux-gcc生成的两种可执行文件的属性,简述两者的异同。 答:区别就是gcc是linux下的C语言编译器,编译出来的程序在本地执行,而arm-linux-gcc用来在linux下跨平台的C语言编译器,编译出来的程序在目标机(如ARM平台)上执行,嵌入式开发应使用嵌入式交叉编译工具链。 安装步骤:
1)将压缩包arm-linux-gcc-4.4.3.tar.gz存放在一个目录下,这个目录就是你等会解压缩的目录,以后这个目录就不能随便删掉了,我的存放路径是 /home/song/software,如下图,记住这个路径,等会还会用到。
2)使用tar命令:tar zxvf arm-gcc-4.4.3.tar.gz将software文件夹下的arm-linux-gcc-4.4.3.tar.gz解压缩安装到当前目录下如下图
通过下图可以看到解压成功了,并且解压后的文件存放在了/home/song/software/opt/FriendlyARM/toolschain/4.4.3文件夹下,如下图所示,这个存放路径可得记住,如下图
3)接下来配置系统环境变量,把交叉编译工具链的路径添加到环境变量PATH中去,这样就可以在任何目录下使用这些工具。记下上一步中的安装路径,使用命令:vim /etc/profile 编辑profile文件,添加环境变量。
嵌入式实验报告 专业:电子信息工程 学号:201316010 姓名:张岩
在profile中最后一行添加:export PATH=$PATH:/home/song/software/opt/FriendlyARM/toolschain/4.4.3/bin 这个路径就是那个bin目录所在的路径,可能你的不一样,按照你实际的目录填就可以了,如下图32行
编写完保存就好了
4)使用命令:source /etc/profile 使环境变量生效
5)在终端上输入命令 arm-linux 再按Tab键,可以看到下图,说明环境变量设置成功了
6)使用命令:arm-linux-gcc
-v 会出现下面的错误提示:
15:
exec:
/home/song/software/opt/FriendlyARM/toolschain/4.4.3/bin/arm-linux-gcc: not found
/home/song/software/opt/FriendlyARM/toolschain/4.4.3/bin/.arm-none-linux-gnueabi-gcc:
说是出现这种问题的原因是由于Ubuntu12.04用的是64位的,解决方法就是使用命令:sudo apt-get install ia32-libs 装一些32位的库
7)待安装完32位的库之后,再使用命令:arm-linux-gcc -v,这一次就成功了,如下图
嵌入式实验报告 专业:电子信息工程 学号:201316010 姓名:张岩
8)验证,编译一个hello.c文件
使用命令:arm-linux-gcc hello.c -o hello 看是否编译成功
可见成功生成了二进制文件。