linux c学习笔记:[1]gcc的使用方法

作者:暴躁小n | 创建时间: 2023-06-23
个人学习笔记,所用课本是《linux 软件工程师(C语言)实用教程》,希望对不懂的人起到帮助作用! 本篇讲解gcc的使用方法。...
linux c学习笔记:[1]gcc的使用方法

GCC相关

gcc编译常用格式: gcc  C源文件 -o 目标文件 或 gcc -o 目标文件  C源文件 或 gcc C源文件 最后一种情况产生的目标文件默认为a.out gcc支持的后缀名:

gcc指令的一般格式如下: gcc [参数] 要编译的文件 [参数]  [目标文件] gcc编译流程: 源代码(.c)->预处理(Pre-Processing)->编译(Compiling)->汇编(Assembing)->链接(Linking)->可执行文件 具体命令如下: c文件用gcc的"-E"参数预处理,生成预处理“.i”文件,用gcc的“-S”参数编译,生成汇编“.s"文件,再用gcc的”-c“参数汇编,生成二进制”.o“文件,最后再用一次gcc把”.o“文件和一些链接库文件链接成可执行文件。

gcc总体参数 -c  只是编译不链接,生成目标文件 -S  只是编译不汇编,生成汇编代码 -E  只进行预编译 -g 在可执行文件中包含调试信息(与下一篇的必须命令) -o file 把输出文件输出到file中 -v 显示gcc的版本信息 -I dir 在头文件的搜索路径中添加dir目录 -L dir 在库文件的路径列表中添加dir目录 -static 链接静态库 -library 连接名问library的库文件

gcc告警与出错参数: -ansi 支持符合ANSI的C程序 -pedantic 允许发出ANSI C标准所列的全部警告信息 -pedantic -error 允许发出ANSI C标准所列的全部错误信息 -w 关闭所有告警 -Wall 允许发出gcc提供的所有游泳的告警信息 -werror 把所有的告警信息转化为错误的信息,并在告警发生时终止编译

温馨提示

gcc在编译的时候默认使用动态链接库,编译链接时并不把库文件的代码加入到可执行文件中,而是在程序执行的时候动态加载链接库,这样可以节省系统开销
点击展开全文

更多推荐