调试内核:去掉优化选项

来源:互联网 发布:sql数据库获取当前时间 编辑:程序博客网 时间:2024/06/05 08:18

(参考: http://www.lenky.info/archives/2013/03/2238)

有时候,在调试内核的时候,去看一些变量的值的时候,会发现是看不到的:

work = <optimized out>ret = <optimized out>
这是因为, 内核默认使用了 -O2优化选项,有些变量被优化掉了.

对于这个问题,可以通过修改 makefile文件里的优化参数解决.

比如,我们想要看到  文件 arch/arm/kernel/smp.c的局部变量的数值,就可以在 arch/arm/kernel/下面的makefile里最后加上如下一行:

CFLAGS_smp.o = -O0

0 0
原创粉丝点击