gcc 教程
GCC 是 GNU 编译器集合(GNU Compiler Collection)的首字母缩写词。GNU 编译器集合包含 C,C++,Objective-C,Fortran,Java 和 Ada 的前端以及这些语言对应的库(libstdc++,libgcj,……)。
-Wall 开启编译器的所有警告 -g 生成的目标文件中带有调试信息 -o 名称 指定文件名称 -M/-MM 源码文件 找到这个源码文件中包含的头文件,并生成一个依赖关系 -lNAME 使链接器尝试链接系统库目录中的函数库文件 libNAME.a,gcc编译C++需要 -lstdc++
gcc -c xxx.c 编译出 .o 目标文件 gcc xxx.c 编译 .out 可执行文件, 未使用 -o 指定名称的话生成的文件名为 a.out gcc xx1.c xx2.c xx3.c 将多个文件编译成一个可执行文件 gcc xxx.c -o exec 编译 xxx.c, 并将编译出的可执行文件命名为 exec
.o 与 .out 的区别
.o 是编译器生成的“object文件”(大概叫目标文件), 无法执行 .out 应该就是可执行文件。
C代码要经过“编译”和“链接”才能执行,单纯地编译就是生成 .o文件 ,把(单个或多个).o文件(还有各种库)链接起来才能形成可执行文件。
直接使用 g++ 指令 编译 C++ 代码不用使用 -lstdc++