> gcc -E b.c -o b.i > ls b.c b.i > gcc -S b.i b.c b.i b.s > gcc -c b.s b.c b.i b.o b.s > gcc b.o b.c b.i b.o a.out b.s 包管理 后续我们将介绍GCC的主要编译参数,但在这之前,笔者希望介绍的核心内容是「如何从包管理的角度使用GCC编译参数」。这也是笔者...
1.2 GCC的预处理器 GCC(GNU Compiler Collection)提供了一个功能强大的预处理器。在GCC中,预处理可以单独通过命令gcc -E来调用。这个命令让GCC执行预处理,但不继续进行编译、汇编或链接。这对于调试预处理器相关的问题非常有用,例如检查宏定义是否正确展开,或者条件编译的代码块是否如预期那样被包含或排除。 1.3 使...
在cmake 中,我们可以通过设置参数来控制编译过程。这些参数可以影响到编译后的软件性能、可移植性等方面。常用的 gcc 参数有以下几个: 1.-O:优化编译,产生更高效的可执行文件。这个参数通常与-O2 或-O3 一起使用,以选择不同程度的优化。 2.-O2:中等优化。这个选项会开启一些较为简单的优化措施,如循环展开、...
2.gcc 参数的种类 gcc 的参数主要分为以下几类: (1) 编译选项:这类参数主要用于控制编译过程中的各种选项,例如:-O(优化)、-g(调试信息)、-o(输出文件)等。 (2) 语言选项:这类参数主要用于指定源代码的语言类型,例如:-C(C 语言)、-C++(C++语言)、-Fortran(Fortran 语言)等。 (3) 平台选项:这类参数...
其他常用参数 -DCMAKE_BUILD_TYPE:指定构建类型。使用该参数可以指定构建类型,例如Debug、Release等。 -DCMAKE_C_COMPILER:指定C编译器。使用该参数可以指定使用的C编译器,例如gcc、clang等。 -DCMAKE_CXX_COMPILER:指定C++编译器。使用该参数可以指定使用的C++编译器,例如g++、clang++等。
gcc 参数主要分为以下几类: (1)输入选项:指定输入文件,如`-I`用于指定头文件目录,`-o`用于指定输出文件等。 (2)输出选项:控制输出结果的格式,如`-g`用于生成带有调试信息的可执行文件,`-O`用于优化编译等。 (3)编译选项:控制编译过程中的行为,如`-W`用于启用警告,`-Wno-warning_name`用于禁用特定警告等...
这些特性在 gcc/g++ 中是通过编译时的参数来决定的,如果将优化程度调到最高需要设置参数-O3,最低是 -O0 即不做优化;添加调试信息的参数是 -g -ggdb ,如果不添加这个参数,调试信息就不会被包含在生成的二进制文件中。 CMake 中有一个变量 CMAKE_BUILD_TYPE ,可以的取值是 Debug Release RelWithDebInfo 和...
后面跟随的-O3 -Wall的是什么意思?这个参数是gcc或者g++进行编译时设置的参数; gcc中常用的编译选项有: -c 只编译并生成目标文件:将汇编代码编译成目标文件,即二进制代码。-c 可以直接把 C/C++ 代码编译成机器代码,注意此时并没有链接生成可执行文件这样的步骤,因此,对于链接中的错误是无法发现的。
编译器:g++使用g++编译器时,理解各种关键参数对于高效编程至关重要。-g: 产生带调试信息的可执行文件 该选项告知GCC生成调试信息,以便GDB进行调试。-O[n]: 优化源代码 通过指定数字n,可以调整优化级别,以平衡程序性能与开发效率。-l和-L: 指定库文件与路径 这些参数用于链接特定库文件及指定库文件...