« helloをmake | トップページ | 二次元のヒストグラム »

gccのオプション

今日はgccのオプションを調べた。まぁGCCの使い方をコピーしただけなんですけどね。より正しくはそっちを見てください。

-c:ソースファイルのコンパイルやアセンブルは行なうが、リンクは行なわない。単にリンク段階を行なわないのである。この場合の最終的な出力は、各ソースファイル毎のオブジェクトファイルという形になる。デフォルトでは、オブジェクトファイル名は、ソースファイル名のサフィックス .c、.i、.s 等を .o に置き換えたものになる。
-o:出力を指定されたファイル file に置く。これは、生成される出力の種類によらない。実行形式ファイルでも、オブジェクトファイルでも、アセンブラフィアルでも、プリプロセス済の C コードでもかまわない。出力ファイルは一つしか指定できないので、複数の入力ファイルがある場合に-o を指定するのは、実行形式ファイルを出力とする場合しか意味がない。
-D:マクロを macro を定義し、文字列 1 をその定義とする。
-M:各オブジェクトファイルの依存ファイルを記述する make のルールに適した出力を行なうようプリプロセッサに指示する。プリプロセッサは、各ソースファイル毎に make のルールを一つ出力する。そのルールのターゲットは、ソースファイルに対応するオブジェクトファイル名であり、依存ファイルはそのソースファイルが#include している全てのヘッダファイルである。
-I:ディレクトリ dir をヘッダファイルを検索するディレクトリのリストの先頭に追加する。このオプションを使うことにより、システムのヘッダファイルを読者自身のバージョンで置き換えることができる。
-f:ファイル単位の要約に加えて、関数単位の要約を出力する。(gcov用)
-O2:さらなる最適化を行なう。
-g:明示的なグローバル宣言を追加する。これは、ソースファイルの中で呼び出されてはいるが宣言されていない関数について、ファイルの先頭にその関数の明示的な宣言を挿入するということを意味する。この宣言は、宣言されていない関数への呼び出しを含む最初の関数定義よりも前に置かれる。このオプションは protoize でのみ使用できる。

次回はldのオプションでも調べっかなぁ。
-T
-L
-o
-l

|

« helloをmake | トップページ | 二次元のヒストグラム »

コメント

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/44043/11180356

この記事へのトラックバック一覧です: gccのオプション:

« helloをmake | トップページ | 二次元のヒストグラム »