前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >gcc编译器如何使用_gcc编译器用什么语言写的

gcc编译器如何使用_gcc编译器用什么语言写的

作者头像
全栈程序员站长
发布2022-09-20 09:17:19
1.6K0
发布2022-09-20 09:17:19
举报

大家好,又见面了,我是你们的朋友全栈君。

一、gcc编译流程

GCC编译器在编译一份C代码的时候,需要经过以下4个步骤:

预处理(preprocessing):对 .c 源文件进行预处理,生成 .i 文件。 编译(compilation):对 .i 文件进行编译,生成 .s 汇编文件。 汇编(assembly):对 .s 文件进行汇编,生成 .o 目标文件。 链接(linking):对 .o 文件进行链接,生成可执行文件。

二、gcc命令使用

 2.1 gcc命令格式定义

gcc编译器如何使用_gcc编译器用什么语言写的
gcc编译器如何使用_gcc编译器用什么语言写的

2.2 gcc命令常用参数

  2.2.1 基本参数

-E:仅对源文件进行预处理,不进行编译。结果直接输出到显示屏。

gcc编译器如何使用_gcc编译器用什么语言写的
gcc编译器如何使用_gcc编译器用什么语言写的

-S:对源文件进行预处理、编译,不进行汇编。结果以 .s 文件形式保存,与 .c 源文件同名。

gcc编译器如何使用_gcc编译器用什么语言写的
gcc编译器如何使用_gcc编译器用什么语言写的

-c:对源文件进行预处理、编译、汇编,不进行链接。结果以 .o 文件形式保存,与 .c 源文件同名。

gcc编译器如何使用_gcc编译器用什么语言写的
gcc编译器如何使用_gcc编译器用什么语言写的

-save-temps:保存编译过程中所产生的所有中间文件。中间文件名与 .c 源文件同名,后缀为 .i 、.s、.o

gcc编译器如何使用_gcc编译器用什么语言写的
gcc编译器如何使用_gcc编译器用什么语言写的
gcc编译器如何使用_gcc编译器用什么语言写的
gcc编译器如何使用_gcc编译器用什么语言写的

  2.2.2 调试参数

-o:将任何类型的输出都存放至指定的文件中。

gcc编译器如何使用_gcc编译器用什么语言写的
gcc编译器如何使用_gcc编译器用什么语言写的

-Wall:打开编译器的警告标志,尽可能多的输出警告信息。强烈建议,编译时始终带上 -Wall 选项。

gcc编译器如何使用_gcc编译器用什么语言写的
gcc编译器如何使用_gcc编译器用什么语言写的

-Werror:将所有的警告当成错误处理,必须消除警告才能继续编译。

gcc编译器如何使用_gcc编译器用什么语言写的
gcc编译器如何使用_gcc编译器用什么语言写的

 2.2.3 函数库参数

-llibrary:手动指定函数库library参与链接。库名为library,文件名为liblibrary.a或liblibrary.so

  -Ldir:手动添加一个路径dir,用以搜索库文件(.a 或 .so 文件,即手动指定的函数库文件的所在目录)。

  -Idir:手动添加一个路径dir,用以搜索头文件(.h 文件,即源码内#include要包含的文件的所在目录)。

gcc编译器如何使用_gcc编译器用什么语言写的
gcc编译器如何使用_gcc编译器用什么语言写的
gcc编译器如何使用_gcc编译器用什么语言写的
gcc编译器如何使用_gcc编译器用什么语言写的

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/167866.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、gcc编译流程
  • 二、gcc命令使用
    •  2.1 gcc命令格式定义
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档