linux c学习笔记:[1]gcc的使用方法
个人学习笔记,所用课本是《linux 软件工程师(C语言)实用教程》,希望对不懂的人起到帮助作用!
本篇讲解gcc的使用方法。
GCC相关
- 01
gcc编译常用格式: gcc C源文件 -o 目标文件 或 gcc -o 目标文件 C源文件 或 gcc C源文件 最后一种情况产生的目标文件默认为a.out gcc支持的后缀名:
- 02
gcc指令的一般格式如下: gcc [参数] 要编译的文件 [参数] [目标文件] gcc编译流程: 源代码(.c)->预处理(Pre-Processing)->编译(Compiling)->汇编(Assembing)->链接(Linking)->可执行文件 具体命令如下: c文件用gcc的"-E"参数预处理,生成预处理“.i”文件,用gcc的“-S”参数编译,生成汇编“.s"文件,再用gcc的”-c“参数汇编,生成二进制”.o“文件,最后再用一次gcc把”.o“文件和一些链接库文件链接成可执行文件。
- 03
gcc总体参数 -c 只是编译不链接,生成目标文件 -S 只是编译不汇编,生成汇编代码 -E 只进行预编译 -g 在可执行文件中包含调试信息(与下一篇的必须命令) -o file 把输出文件输出到file中 -v 显示gcc的版本信息 -I dir 在头文件的搜索路径中添加dir目录 -L dir 在库文件的路径列表中添加dir目录 -static 链接静态库 -library 连接名问library的库文件
- 04
gcc告警与出错参数: -ansi 支持符合ANSI的C程序 -pedantic 允许发出ANSI C标准所列的全部警告信息 -pedantic -error 允许发出ANSI C标准所列的全部错误信息 -w 关闭所有告警 -Wall 允许发出gcc提供的所有游泳的告警信息 -werror 把所有的告警信息转化为错误的信息,并在告警发生时终止编译