小智 7
要更改编译选项,您需要在运行'make'的目录中编辑文件'Makefile'.在该文件中查找以下内容之一:
定义编译器的变量,可能类似于:
CC = 'GCC'
调用编译器的实际行(更可能是手工制作的Makefile).
变量称为CFLAGS或CXXFLAGS
在前两种情况下,只需在'gcc'之后添加'-ggdb',在第三种情况下,只需添加'-ggdb'即可:
CFLAGS='-ggdb'
Run Code Online (Sandbox Code Playgroud)
我必须经常处理的 makefile(由其他人创建)并不容易更改编译器的选项。CFLAGS简单地在命令行上进行设置很容易,但会破坏许多其他重要的编译选项。但是,您通常可以通过在命令行上覆盖编译器宏来处理这些问题make:
make CC="gcc -g" ...other arguments...
Run Code Online (Sandbox Code Playgroud)
您需要确保您对调试感兴趣的所有内容都使用调试标志进行编译。您可以使用make cleanup或make clean清除碎片,或者您可以采取更简单的措施(rm *.o *.a *.so或其等效措施)。或者,如果您有 GNU Make,则使用-B或--always-make强制它重建所有内容。
如果您有多目录构建,则需要在所有相关目录中执行此操作。