1

Linux カーネルがどの最適化レベル (-O?) で構築されているかを確認しようとしています。どうやってやるの?

私が見つけることができる唯一のものは、カーネル構成ファイルの CONFIG_CC_OPTIMIZE_FOR_SIZE=y です。-Osを意味しますか?それは何かをオーバーライドしますか (1 つの gcc 行に複数の最適化があると、最後の -O が勝者になります)? -O2 でビルドされたカーネルの一部を見つけましたが、すべてのカーネルに対して行数が少なすぎます。

そのような最適化はどこで集中的に設定されますか?

注: CentOS 5.5 を使用しています。

4

2 に答える 2

2

で実行するmake V=1と、コマンドラインがすべての栄光で表示されます。

于 2012-05-09T04:49:01.483 に答える
2

カーネル構成に CONFIG_CC_OPTIMIZE_FOR_SIZE が含まれている場合は、-Os を使用してコンパイルされたと想定できますCONFIG_CC_OPTIMIZE_FOR_SIZE が設定されていない場合、-O2 が使用されます。

blueshift が既に述べたように、make V=1 でビルドすると、最適化フラグを含む完全なコンパイラ出力が make に強制的に表示されます。

于 2013-11-05T09:46:29.513 に答える