编程库
头文件
汇编器
分析器
编译器
链接器
调试器
文本编辑器
编程工具
内核源代码文件和头文件 /usr/src/linux
C的开发库 glibc
源代码调试器 gdb (GNU Debugger), kdbg, ddd, xdgb
indent 能够按照许多预先定义好的或者自定义的标准调整源代码以及代码缩进的格式以达到所需的风格。
tags程序 (在emacs上对应etages) 生成的文件能够增强编辑器浏览和分析源代码的能力。
lclint 快速语法检查,找出大量问题,包括未声明的变量和函数,可能的内存破坏(memory corruption)
文本编辑器
vi
emacs
Kdevelop
Nedit
GNU CC (GCC) 是GNU项目的编译器套件。它能够编译C、 C++和Objective C语言编写的程序。GCC在g77的帮助下也能够编译Fortran程序。
GCC的编译过程分为四个阶段:
预处理
适当编译
汇编
链接
GCC的预处理程序 cpp, 使用-E选项告诉GCC在预处理后停止编译过程
-o FILE 指定输出文件名,在编译为目标代码时,这一选项不是必须的。如果FILE没有指定,默认文件名是a.out
-c 只编译不链接
-v 显示在编译过程的每一步中用到的命令
-Wall 允许发出GCC能提供的所有有用的警告
-ansi 支持ANSI/ISO C的标准语法,取消GNU的语法扩展中与该标准有冲突部分(但这一选项并不能保证生成ANSI兼容的代码)
-g 在可执行程序中包含标准调试信息
-DFOO=BAR 在命令行定义预处理宏FOO,其值为BAR
-IDIRNAME 将DIRNAME加入到包含文件的搜索目录列表中
-LDIRNAME 将DIRNAME加入到库文件的搜索目录列表中
-lFOO 链接名为libFOO的函数库