gcc编译器如何使用_gcc编译器用什么语言写的
大家好,又见面了,我是你们的朋友全栈君。
一、gcc编译流程
GCC编译器在编译一份C代码的时候,需要经过以下4个步骤:
预处理(preprocessing):对 .c 源文件进行预处理,生成 .i 文件。 编译(compilation):对 .i 文件进行编译,生成 .s 汇编文件。 汇编(assembly):对 .s 文件进行汇编,生成 .o 目标文件。 链接(linking):对 .o 文件进行链接,生成可执行文件。
二、gcc命令使用
2.1 gcc命令格式定义
2.2 gcc命令常用参数
2.2.1 基本参数
-E:仅对源文件进行预处理,不进行编译。结果直接输出到显示屏。
-S:对源文件进行预处理、编译,不进行汇编。结果以 .s 文件形式保存,与 .c 源文件同名。
-c:对源文件进行预处理、编译、汇编,不进行链接。结果以 .o 文件形式保存,与 .c 源文件同名。
-save-temps:保存编译过程中所产生的所有中间文件。中间文件名与 .c 源文件同名,后缀为 .i 、.s、.o
2.2.2 调试参数
-o:将任何类型的输出都存放至指定的文件中。
-Wall:打开编译器的警告标志,尽可能多的输出警告信息。强烈建议,编译时始终带上 -Wall 选项。
-Werror:将所有的警告当成错误处理,必须消除警告才能继续编译。
2.2.3 函数库参数
-llibrary:手动指定函数库library参与链接。库名为library,文件名为liblibrary.a或liblibrary.so
-Ldir:手动添加一个路径dir,用以搜索库文件(.a 或 .so 文件,即手动指定的函数库文件的所在目录)。
-Idir:手动添加一个路径dir,用以搜索头文件(.h 文件,即源码内#include要包含的文件的所在目录)。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/167866.html原文链接:https://javaforall.cn
相关文章
- strcmp函数的使用_用c语言实现strcmp
- fprintf函数用法_c语言fgets函数用法
- 从零开始的异世界生信学习 R语言部分 05 作图-1
- c语言编译器在线-c在线编译器(c语言在线编程)
- c语言编译器
- R语言使用虚拟变量(Dummy Variables) 回归分析工资影响因素|附代码数据
- 【C 语言】编译过程 分析 ( 预处理 | 编译 | 汇编 | 链接 | 宏定义 | 条件编译 | 编译器指示字 )
- 【C++ 语言】面向对象 ( 成员函数 | 常量函数 | 友元函数 | 友元类 | 单例类 )
- Go语言数据类型转换
- Go语言Test功能测试函数详解
- Go从入门到精通(一)go语言初识详解编程语言
- Linux C 语言如何关闭进程(linuxc关闭进程)
- Go语言服务端处理HTTP、HTTPS请求
- 器Linux下Java语言编译器之旅(linuxjava编译)
- Linux下R语言安装流程指南(linuxr安装)
- 版Linux下C语言编译器探索(c语言编译器linux)
- 如何在 Ubuntu 安装 Go 语言编写的 Git 服务器 Gogs
- Linux环境下如何创建C语言项目(linux 创建c语言)
- 用c语言实现HUP信号重启进程的方法