gcc-Emain.c>main.i 编译器将main.c预处理结果输出 main.i 文件。 2、编译 在编译过程中,编译器主要作语法检查和词法分析。在确认所有指令都符合语法规则之后,将其翻译成等价的中间代码或者是汇编代码。gcc-Smain.i-omain.s 编译器将预处理结果文件main.i翻译成汇编代码main.s 3、汇编 汇编阶段是把编译...
gcc -c main.c 这个命令会编译 main.c 并生成一个名为 main.o 的目标文件。 综合示例 假设你有一个包含多个源文件的项目,如 main.c, utils.c 和headers.h,并且你想将它们编译为一个可执行文件 myproject。 首先编译每个源文件为目标文件: gcc -c main.c gcc -c utils.c 这会生成 main.o 和util...
gcc -c hello.c -o hello # 这个gest是目标文件,不是可执行文件,因为这里用到了-c,告诉gcc到汇编为止,不要进行链接。 gcc -c hello.c -o hello.o # 这个hello.o和hello一样,都是目标文件 gcc hello.c -o hello # 生成可执行文件hello 二 选项-c 选项-c告诉gcc对源文件进行编译会汇编,但不进行链接。
g、o和c在GCC编译器中的含义如下:g:含义:这是一个调试选项,为GDB提供支持。作用:使得在程序出错时能够方便地进行调试。若未指定此选项,GDB将无法充分利用程序的调试信息。o:含义:用于指定生成的可执行文件的名称。作用:如果不使用这个选项,GCC默认会生成一个名为”a.out”的可执行...
一、-g -g可执行程序包含调试信息-g为了调试用的加个-g 是为了gdb 用,不然gdb用不到 二、-o -o指定输出文件名-o output_filename,确定输出文件的名称为output_filename,同时这个名称不能和源文件同名。如果不给出这个选项,gcc就给出预设的可执行文件a.o
-c表示只编译(compile)源文件但不链接,会把.c或.cc的c源程序编译成目标文件,一般是.o文件。-o用于指定输出(out)文件名。不用-o的话,一般会在当前文件夹下生成默认的a.out文件作为可执行程序。例如:gcc -c test.c将生成test.o的目标文件 gcc -o app test.c将生成可执行程序app gcc -c ...
gcc -c hello.c -o hello.o # 这个hello.o和hello一样,都是目标文件 1. 2. 3. 4. gcc hello.c -o hello # 生成可执行文件hello 1. 2. 二 选项-c 选项-c告诉gcc对源文件进行编译会汇编,但不进行链接。此时,将生成目标文件,如果没有指定输出文件,就生成同名的.o文件。
-g为了调试用的 加个-g是为了gdb用,不然gdb用不到 -ooutput_filename,确定输出文件的名称为output_filename,同时这个名称不能和源文件同名。如果不给出这个选项,gcc就给出预设的可执行文件a.out。 一般语法: gccfilename.c-ofilename 上面的意思是如果你不打-ofilename那么默认就是输出filemame.out.这个-...
"-c"(只编译不链接)这个选项的作用是编译源代码,但不会生成可执行文件,仅保留目标文件,这对于需要单独编译模块或库非常有用。它会停止在链接阶段,只完成编译部分。综上,"-g"、"-o"和"-c"是GCC编译器中的关键选项,分别用于调试支持、指定输出文件名和单独编译。理解并合理运用这些选项可以更...
gcc -c 和 -o -c(compile) 和 -o(out)都是gcc编译器的可选参数 例如 gcc -o 1-1 1-1.c 表示把1-1.c生成 可执行程序1-1