[Linux] gcc, g++ によるC/C++のコンパイル・オプション
土曜日, 12月 26th, 2009UNIX/Linuxを用いて、C/C++のプログラムをコンパイルする際に多くの場合使用するコンパイラはgccやg++と呼ばれるものを使うことがほとんどだと思います。なので、今回はこれらgccやg++コマンドを用いてC/C++のプログラムをコンパイルする際のオプションについて説明しようと思います。普通にコンパイルするだけなら、gcc プログラム名やg++ プログラム名などとしてコンパイルするだけでできてしまいます。しかし、このコンパイル時にいくつかのコンパイル・オプションを付加することにより、柔軟にプログラムのコンパイルを行うことができるようになります。例えば、コンパイル時間に時間がかかったとしてもプログラムの実行時間を短くしたい、とか生成される実行可能ファイルのファイル名を変更したり、ヘッダファイルのインクルードパスを変更したり、といったことができるようになります。では、続きでいくつかのオプションを紹介します。
主要オプション
オプション -o
後に続く文字列をファイル名とする実行可能ファイルを生成します。これを指定しない場合は、a.outという名前の実行可能ファイルを生成しますが、これを指定することで、実行可能ファイルの名前を任意の名前にすることが可能になります。
オプション -c
ソースファイルのコンパイルのみを行って、オプジェクトファイルを生成するためのオプション。リンカによるリンクを行わない。これにより生成されたオブジェクトファイルはリンクされていないため、そのままでは実行することはできない
オプション -I
通常のヘッダファイル以外のヘッダファイルを使用する際に、そのヘッダファイルが存在するパスを記述します。-Iの後ろにヘッダファイルの存在するディレクトリへのパスを書くことによって使用できます。通常は使用する必要はないはず。




