千家信息网

GCC参数是什么

发表于:2024-11-21 作者:千家信息网编辑
千家信息网最后更新 2024年11月21日,这篇文章给大家介绍GCC参数是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。gcc与g++分别是gnu的c&c++编译器gcc/g++在执行编译工作的时候,总共需要4步:1、
千家信息网最后更新 2024年11月21日GCC参数是什么

这篇文章给大家介绍GCC参数是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

  gcc与g++分别是gnu的c&c++编译器gcc/g++在执行编译工作的时候,总共需要4步:

  1、预处理,生成.i的文件[预处理器cpp]

  2、将预处理后的文件转换成汇编语言,生成文件.s[编译器egcs]

  3、有汇编变为目标代码(机器代码)生成.o的文件[汇编器as]

  4、连接目标代码,生成可执行程序[链接器ld]

参数详解

  -xlanguagefilename

  设定文件所使用的语言,使后缀名无效,对以后的多个有效。也就是根据约定C语言的后缀名称是.c的,而C++的后缀名是.C或者.cpp,如果你很个性,决定你的C代码文件的后缀名是.pig哈哈,那你就要用这个参数,这个参数对他后面的文件名都起作用,除非到了下一个参数的使用。可以使用的参数吗有下面的这些:'c','objective-c','c-header','c++','cpp-output','assembler',与'assembler-with-cpp'。

看到英文,应该可以理解的。

  xnonefilename

关掉上一个选项,也就是让gcc根据文件名后缀,自动识别文件类型。

  c

  只激活预处理,编译,和汇编,也就是他只把程序做成obj文件

  S

  只激活预处理和编译,就是指把文件编译成为汇编代码。

  E

  只激活预处理,这个不生成文件,你需要把它重定向到一个输出文件里面。

  o

  制定目标名称,默认的时候,gcc编译出来的文件是a.out,很难听,如果你和我有同感,改掉它。

  pipe

  使用管道代替编译中临时文件,在使用非gnu汇编工具的时候,可能有些问题。

  GCC可同时用来编译C程序和C++程序。一般来说,C编译器通过源文件的后缀名来判断是C程序还是C++程序。在Linux中,C源文件的后缀名为.c,而C++源文件的后缀名为.C或.cpp。但是,gcc命令只能编译C++源文件,而不能自动和C++程序使用的库连接。因此,通常使用g++命令来完成C++程序的编译和连接,该程序会自动调用gcc实现编译。

关于GCC参数是什么就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

0