1

2020-03-31  本文已影响0人  追梦少年_d07f

4.1.3 搭建交叉开发环境

交叉开发是指先在一台通用PC上进行软件的编辑、编译与连接,然后下载到嵌入式设备中运行调试的开发过程。通用PC称为宿主机,嵌入式设备称为目标机。

交叉开发环境(Cross Development Environment)是指编译、链接和调试嵌入式应用软件的环境。它与运行嵌入式应用软件的环境有所不同,通常采用“宿主机——目标机”模式。

开放的交叉开发环境的典型代表是:GNU工具链。它能够支持X86、ARM、MIPS、PowerPC等多种处理器。

GNU交叉工具链

交叉编译器:如,arm-linux-gcc

交叉汇编器:如,arm-linux-as

交叉链接器:如,arm-linux-ld

用于处理可执行程序和库的一些基本工具:如,arm-linux-strip、arm-linux-ar、arm-linux-ranlib(相当于arm-linux-s)等。

交叉编译是指在一种平台上编译出能够在另一种平台(体系结构不同)上运行的程序。用来编译这种程序的编译器就叫做交叉编译器。

arm-linux-gcc作为基于ARM平台的编译器,其编译出来的程序可以在ARM平台上直接运行,这里选择的交叉编译器是gcc。gcc是符合ISO标准的C编译器,它在需要的时候调用其它组件(预处理器、汇编器、连接器)。gcc ≠ GCC

很多人把GCC看成只是一个C编译器,其实GCC是GNU Compiler Collection的简称,目前GCC可以支持C,C++,ADA,JAVA,Fortran,PASCAL等多种高级语言,GCC主要包括以下一些工具: cpp(预处理器), gcc(C编译器),g++(C++编译器)等编译器。

gcc识别的主要文件扩展名如下:

  .c        C语言代码

  .C, .cc  C++语言代码

  .i        预处理后的C语言代码

  .ii      预处理后的C++语言代码

  .s, .S    汇编语言代码

  .o        目标代码

  .a        静态链接库(程序编译时使用)

  .so      动态链接库(程序运行时使用)

GCC对C语言程序的处理如图所示。

下述内容用于实现任务描述4.D.1---搭建arm-linux-gcc交叉编译环境。具体步骤如下:

1.访问Window

上一篇下一篇

猜你喜欢

热点阅读