第6节 ARM 交叉编译和调试
推荐给好友
打印
加入收藏
更新于2008-05-15 19:30:31

6.1 编号
Module 5

6.2 目的
掌握cygwin下GNUARM工具链的安装,使用,调试

6.3 实验描述
  6.3.1 安装GNUARM
  6.3.1.1 实验编号
 LAB1_MD5_1
  6.3.1.2 步骤
查看D:/ESD2007/TOOLS目录中是否含有bu-2.15_gcc-3.4.3-c-c  -java_nl-1.12.0_gi-6.1.exe文件,如果不存在,请咨询助教。
  运行:
bu-2.15_gcc-3.4.3-c-c  -java_nl-1.12.0_gi-6.1.exe
注意,不要装在Program File 下, 请装在d:\cygwin\usr\GNUARM下
 


  6.3.1.3 验证
arm-elf-gcc
应该出现
no input files

  否则,会发现打印很多错误信息,主要错误是 cygwin1.dll文件多重定义,解决的方法是在我的电脑中搜索cygwin1.dll文件,把x:\EDK\cygwin\bin与x:\cygwin\usr\GNUARM\bin文件夹下的cygwin1.dll文件改名为cygwin1.dll.bak, D:\cygwin\bin下的cygwin1.dll文件不变。 再次重新启动cygwin,输入命令 arm-elf-gcc检查是否成功。

  6.3.1.4 实验报告


  6.3.2 交叉编译
  6.3.2.1 实验编号
 LAB1_MD5_2
  6.3.2.2 步骤
1.创建文件hello_arm.c实现hello world功能。
2. arm-elf-gcc –o hello_arm –g hello_arm.c
3.调试
arm-elf-insight
注意选择目标板为simulator
 


  6.3.2.3 验证
可以跟踪调试,输出hello
  6.3.2.4 实验报告


 6.3.3  跨平台多文件链接编译
  6.3.3.1 实验编号
LAB1_MD5_3
  6.3.3.2 步骤
在实验LAB1_MD4_3的基础上, 通过改写makefile, 实现X86平台和ARM平台的分别编译
提示:
 1.    在makefile中,添加CC=$(CROSS)gcc,并修改Makefile中的命令
 2.    make CROSS=arm-elf-   实现ARM编译
 3.    make 实现X86平台编译
  6.3.3.3 验证
make
./hello.exe
make clean
make CROSS=arm-elf-
arm-elf-insight hello
6.3.3.4 实验报告
cvs ci  makefile
cvs tag LAB1_MD5_3  makefile

 

<<上一节           下一节>> 




 
关于我们 | 诚邀加盟 | 客户服务 | 相关法律 | 网站地图 | 友情链接 | 服务信箱:service@eefocus.com
© 2006 与非门科技信息咨询(北京)有限公司 All Rights Reserved.