首页> 中文学位 >基于GNU工具链的ARM-MINIX嵌入式系统交叉编译环境的移植
【6h】

基于GNU工具链的ARM-MINIX嵌入式系统交叉编译环境的移植

代理获取

目录

文摘

英文文摘

声明

第1章概论

1.1嵌入式系统介绍

1.2 ARM to minix项目介绍

1.3交叉编译系统

1.3.1编译器的结构

1.3.2交叉编译的必要性

1.3.3主流平台开发工具

1.4利用GNU工具链构建ARM-MINIX嵌入式系统的开发环境

1.4.1利用GNU工具链构建嵌入式系统开发环境的优越性

1.4.2利用GNUI工具链构建ARM-MINIX嵌入式系统的开发环境

第2章目标平台和GNU工具链

2.1 ARM体系结构和minix的a.out格式

2.1.1 ARM体系结构

2.1.2 minix的a.out格式剖析

2.2 GNU工具链

2.2.1 GCC简介

2.2.2 GCC编译系统的结构及其工作流程

2.2.3 GNU Binutils工具包和make项目管理工具

第3章GAS和GLD的实现机制分析

3.1 BFD库

3.1.1 BFD的顶层结构

3.1.2 BFD内部工作机制分析

3.1.3 BFD的重要数据结构

3.2 GAS的分析

3.2.1 GAS的数据类型

3.1.2 GAS源代码分析

3.1.3 GAS的结构

3.1.4 GAS的工作流程

3.2连接器GLD的分析

3.2.1连接器GLD的作用

3.2.2连接器GLD的工作机制

3.2.3 GNU LD的数据结构

3.2.4 GLD的实现机制分析

第4章移植GCC交叉编译系统

4.1交叉编译器移植的思路

4.1.1 GCC各模块分析:

4.1.2 GCC交叉编译器移植的一般过程

4.2 BFD地移植

4.3 GAS地移植

4.4 GLD地移植

第5章交叉编译环境的构建

5.1建立交叉编译系统的一般步骤

5.2交叉编译系统的构建

5.2.1准备阶段

5.2.2修改Binutils和GCC

5.2.3移植newlib库

5.2.4构建针对arm-minix的交叉编译系统

第6章总结

参考文献

致谢

展开▼

摘要

信息技术的发展,数字化产品的普及,导致了对嵌入式开发的巨大需求。以Linux为宿主机系统,搭配一个交叉编译环境,为嵌入式设备生成可执行程序己成为现在日益流行的编译嵌入式软件的解决方案。而开放源代码的GNUT具链是一套开源的开发环境,是嵌入式软件开发中理想的交叉编译器。但现有GNUI具链支持的平台并不能满足层出不穷的嵌入式产品的开发需要,仍有许多平台得不到支持,例如我们进行的minix向ARM-MINIX平台的移植。 本文以在linux环境下构建MINIX嵌入式系统的交叉编译工具链为背景,首先介绍了交叉编译系统的基本组成和结构,以及利用GCC构建交叉编译环境的优越性。然后对目标平台作了介绍。分析了GCC编译器,说明了GCC的设计思想,系统结构,介绍了GNU Binutils的功能,使用方法;接着分析了GNU工具链中的GAS和GLD的实现机制及源代码结构,由于BFD是GNUBinutils的基础,GAS和GLD都是使用BFD库来操作目标文件,因此在这一部分本文对BFD库的工作机制,数据结构也作了重点分析。紧接着说明了GCC交叉编译系统的移植思路和方法,实现难点,以及一些相关技术细节,这涉及到了若干重要的C源文件,Makefile,配置文件的修改,重点给出了BFD库,GAS和GLD的分析及其重定向(通常GCC生成的目标程序是针对GNU/Linux系统的)的实现;然后本文给出了在GNU/Linux宿主机上构建针对ARM-MINIX的参数设置及过程:最后对本文所做的工作进行了总结。

著录项

相似文献

  • 中文文献
  • 外文文献
  • 专利
代理获取

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号