make-kpkg使用-O0为kgdb构建内核

时间:2017-01-31 23:03:05

标签: linux gcc optimization kernel debian

我将设置kgdb来调试Ubuntu debian内核。

默认情况下,make-kpkg编译的内核已经过优化(-O2),所以我无法调试变量。

有没有办法禁用内核编译优化(例如,-O0)?

谢谢!

目前,gdb报告变量已经过优化:

(gdb) p pb
$5 = <optimized out>

1 个答案:

答案 0 :(得分:1)

Linux内核依赖于-O2。它不会使用任何较低的优化级别进行编译。它使用了几个GCC&#34;技巧&#34;仅在启用某些优化时才起作用,例如应该像宏一样运行的内联函数。