C言語 - clang

 
1. 概要
2. デバッグオプション

1. 概要

 以前は、FreeBSD も gcc をコンパイラとして使用していましたが、FreeBSD 9.0 より Clang を採用しました。  gcc は非推奨の拡張が多いため、世の中 Clang へと移行しつつあるようです。

2. デバッグオプション

 デバッグのオプションは

clang -g -Ox
 となります。  -g でデバッグ情報の生成。  -Ox はそれぞれ以下の意味を持ちます。
オプション 意 味 備 考
-O0 最適化なし
-O1 -O0 と -O2 との中間。
-O2 ほぼ最適化。適度なレベルらしい。
-Os コードサイズを減少化。
-Oz -Os をさらに縮小
-O3 -O2 より大きく時間がかかる。
-Ofast 言語の標準の厳密な順守に違反する、他の積極的な最適化。
-O4 リンク時間を最適化。

 ちなみに、clang に対応するデバッガは lldb ですが、clang でデバッグオプションを指定して作成したロードモジュールは gdb でデバッグすることもできます。