使用GNU工具链的优势

ZDNet软件频道 时间:2003-06-27 作者:翻译:javaresearch.org-Abel_Cao |  我要评论()
本文关键词:embedded
GNU编译器(GCC)是一个“免费”的C/C++工具链,有力的支撑了Linux系统的发展。由于它可被看作许多嵌入式处理器的一个交叉编译器,所以在嵌入式软件开发中是一个流行的工具。
本文译自Builder.com,未经许可请勿转载GNU编译器(GCC)是一个“免费”的C/C++工具链,有力的支撑了Linux系统的发展。由于它可被看作许多嵌入式处理器的一个交叉编译器,所以在嵌入式软件开发中是一个流行的工具。

支持的体系结构包括:

  • ARM, StrongARM, XScale
  • Hitachi SH
  • Intel i960
  • Intel x86/IA-32
  • MIPS
  • Motorola PowerPC
  • Motorola 68K/ColdFire

我最近使用Windows/MS-DOS主机上的GCC工具链并使用DJGPP完成了一个面向StrongARM 处理器的项目。我发现这个工具链非常可靠,而且能够产生快速高效的机器码。

    GCC工具链中大多数有用的工具主要集中于以下几个源代码包中:

GCC

  • gcc: C 编译器
  • g++: C++ 编译器
  • cpp: C 预处理器

Binutils (binary utilities)

  • as: 汇编程序
  • ld: (目标代码)连接器
  • objcopy: 目标文件翻译器,用于从连接器输出中创建一个ROM 映像
  • objdump: 目标文件阅读器, 用于反汇编目标文件

Make

  • make: make 工具

Debugger

  • gdb: 源代码调试器

当使用交叉编译器的时候,程序通常用前缀来指示目标的体系结构和连接器的输出隔世。例如, arm-elf-as是GCC 工具链中的汇编程序编译器,针对ARM 处理器并产生ELF 格式的二进制代码。这种命名约定避免了对众多以”gcc”命名的针对不同体系结构的编译器的使用混淆。

你可以从GNU FTP site.免费下载GCC个工具的全部源代码。本文不包括怎样从这些源代码创建一个交叉编译器,而CrossGCC FAQ 提供了很好的文档和详细指令。但在你准备使用FTP下载之前,本文会给你一些有益的帮助。


百度大联盟认证黄金会员Copyright© 1997- CNET Networks 版权所有。 ZDNet 是CNET Networks公司注册服务商标。
中华人民共和国电信与信息服务业务经营许可证编号:京ICP证010391号 京ICP备09041801号-159
京公网安备:1101082134