[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1. C, C++, Objective C, Fortran のコンパイル

C, C++, Objective C, Fortran 毎に分かれていたコンパイラは現在では一つに 統合されている。このため我々は「GNU コンパイラ集」(GNU Compiler Collection) という名前を使うことにした。 GNU C コンパイラは, C, C++, Objective C, Fortran で書かれたプログラム をコンパイルすることが可能である。 Fortran コンパイラについては独立したマニュアルで説明している。

GCC というのは、GNU コンパイラ集(GNU Compiler Collection)のよくある省略形 である。 我々のコンパイラの最も一般的な名前でもあるし、C 言語のプログラムを コンパイルすることに焦点が置かれている場合に使われる名前でもある (この省略形は以前は “GNU C Compiler” を表していた)。

C++ プログラムのコンパイルについて言うときには、G++ と呼ぶのが普通である。 コンパイラ自体は一つしかないので、対象とする言語がなんであれ、 GCC と呼ぶのは全く正しい。だが、C++ プログラムをコンパイルするのだという ことを強調するときは、G++ と呼ぶのが便利である。

我々は、“GCC” をコンパイラシステム全体を指す名前として使う。 もう少し正確には、このコンパイラの言語非依存部を指す。 例えば、「GCC」の動作に影響する最適化オプションと言ったり、 あるいは単に「コンパイラ」と言ったりすることもある。

他の言語フロントエンドとして、Ada 9X, Fortran, Modula-3, Pascal について 開発中である。これらのフロントエンドは、C++ と同様、 GNU CC のサブディレクトリで構築され、GCC にリンクされる。 この結果、統合されたコンパイラが出来上がり、C, C++, Objective C, あるいは ユーザがインストールしたフロントエンドの言語がコンパイル出来ることになる。

本マニュアルでは、C、Objective-C、C++ コンパイラのオプションと、 GCC の中核部分のオプションについてのみ解説を行う。他の言語で書かれた プログラムをコンパイルする際に使用するオプションについては、その言語の フロントエンドの文書を参照すること。

G++ は本物のコンパイラである。単なるプリプロセッサではない。 G++ は、C++ プログラムのソースから直接オブジェクトコードを生成する。 中間的な C のコードは作らない。(対照的に、例えば他の実装の中には、 C++ ソースから C プログラムを生成するものもある。) C 言語による中間表現を使わないことで、より良いオブジェクトコード、 より良いデバッグ情報を得ることができる。GNU デバッガ GDB を使えば、 オブジェクトコード中の、このより良いデバッグ情報と合わせて、 C++ プログラムのソースコードレベルの編集(デバッグ)機能の恩恵を 受けることができる。


This document was generated using texi2html 1.78.