"-c"(只编译不链接)这个选项的作用是编译源代码,但不会生成可执行文件,仅保留目标文件,这对于需要单独编译模块或库非常有用。它会停止在链接阶段,只完成编译部分。综上,"-g"、"-o"和"-c"是GCC编译器中的关键选项,分别用于调试支持、指定输出文件名和单独编译。理解并合理运用这些选项可以更...
gcc(GNU Compiler Collection)是一个编译器集合,最初是为C语言设计的,但现在它已经扩展支持包括C++、Fortran、Ada、Go、D等多种编程语言。**g++**是gcc的一部分,专门用于编译C++代码。 2. 语法与用途 尽管g++和gcc都可以用来编译C++代码,但它们的使用方式和默认行为有所不同。 gcc:在默认情况下,gcc将代码视为...
gcc和g++都是GNU(一个组织)的编译器。1、对于.c后缀的文件,gcc把它当做是C程序;g++当做是C++程序;2、对于.cpp后缀的文件,gcc和g++都会当做c++程序。3、编译阶段,g++会调用gcc;4、连接阶段,通常会用g++来完成,这是因为gcc命令不能自动和c++程序使用的库连接。gcc/g++在执行编译工作的时候,...
-c和-o都是gcc编译器的可选参数。-c表示只编译(compile)源文件但不链接,会把.c或.cc的c源程序编译成目标文件,一般是.o文件。-o用于指定输出(out)文件名。不用-o的话,一般会在当前文件夹下生成默认的a.out文件作为可执行程序。例如:gcc -c test.c将生成test.o的目标文件 gcc -o app t...
加个-g 是为了gdb 用,不然gdb用不到 二、-o -o指定输出文件名 -o output_filename,确定输出文件的名称为output_filename,同时这个名称不能和源文件同名。如果不给出这个选项,gcc就给出预设的可执行文件a.out。 一般语法: gcc filename.c -o filename ...
了解Linux 下 C C 编译器 GCC G 了解 Linux 下 C/C++编译器 GCC/G++ 一、GCC 简介 通常所说的 GCC 是 GNU Compiler Collection 的简称 除了编译程序之外 它还含其他相关工具 所以它能把易于人类使用的高级语言编写的源代码构建成计算机能够直接执行的二进制代码。GCC 是 Linux 平台下最常用的编译程序 它是 ...
1、在某种程度上两者都可以编译cpp后缀的程序,但是因为gcc命令不能自动和C程序使用的库联接,所以通常用gcc来完成链接。2、后缀为c的,gcc可当作是C程序,而gcc当作是c程序,后缀为cpp的,两者都会认为是c程序。3、C的语法规则更加严谨一些,编译阶段,g加加会调用gcc,对于c加加代码,两者等价,...
编译hello.c非常简单,只需要 $ gcc hello.c 就可以了,但当项目庞大起来后,假设hello.c依赖与a.c、b.c,而a.c又依赖于库w.lib,每一次编译,我们都要重新编写一次gcc编译命令行吗? 所以,GNU发明了make这个工具软件,可以编写makefile文件来指定特定的项目构建过程,当项目一个文件的代码更改时,我们只需要重新make...
-E 只运行 C 预编译器。 -g 生成调试信息。GNU 调试器可利用该信息。 -IDIRECTORY 指定额外的头文件搜索路径DIRECTORY。 -LDIRECTORY 指定额外的函数库搜索路径DIRECTORY。 -lLIBRARY 连接时搜索指定的函数库LIBRARY。 -m486 针对 486 进行代码优化。