我正在尝试验证哪个优化级别(-O?)是我构建的linux内核。我怎么能这样做?
我唯一能找到的是内核配置文件中的CONFIG_CC_OPTIMIZE_FOR_SIZE = y。这是否意味着-Os?它是否覆盖任何东西(在一个gcc行中有多个优化使得最后一个-O成为赢家)?我发现内核的某些部分是用-O2构建的,但是所有内核的行都太少了。
这种优化集中在哪里?
注意:我使用的是CentOS 5.5。
答案 0 :(得分:2)
使用make V=1
运行,您可以看到命令行的所有荣耀。
答案 1 :(得分:2)
如果您的内核配置包含CONFIG_CC_OPTIMIZE_FOR_SIZE,您可以假设它是使用-Os编译的,请参阅内核makefile,例如:在http://lxr.linux.no/linux+v3.12/Makefile#L573处,对于此设置的位置,这也表明如果未设置CONFIG_CC_OPTIMIZE_FOR_SIZE,则使用-O2。
正如blueshift已经说过的那样,用make V = 1强制构建make会显示包括优化标志在内的完整编译器输出。