我将设置kgdb
来调试Ubuntu
debian
内核。
默认情况下,make-kpkg
编译的内核已经过优化(-O2
),所以我无法调试变量。
有没有办法禁用内核编译优化(例如,-O0
)?
谢谢!
目前,gdb报告变量已经过优化:
(gdb) p pb
$5 = <optimized out>
答案 0 :(得分:1)
Linux内核依赖于-O2。它不会使用任何较低的优化级别进行编译。它使用了几个GCC&#34;技巧&#34;仅在启用某些优化时才起作用,例如应该像宏一样运行的内联函数。