gcc 【GNU Compiler Collection】 GNU C Compilier

概要

gcc(GNU Compiler Collection)とは、GNUプロジェクト開発・公開しているコンパイラ。様々なプログラミング言語コンパイラを集めたパッケージとなっている。LinuxなどのUNIX系OSの多くで標準的に利用され、オープンソースオペレーティングシステム(OS)ではOS自体のコンパイルに用いられることも多い。

様々な言語に対応しており、標準ではC言語C++言語Objective-CFortran、Ada、Go言語、D言語、Rustのコンパイラが同梱されている。以前はJavaコンパイラ(GCJ:GNU Compiler for Java)も含まれていた。「gcc」はgcc内のCコンパイラの名称および実行ファイル名でもあり、C++コンパイラ「g++」のように、各言語用コンパイラはそれぞれ固有の名称を持つ。

gccは字句解析構文解析などをう「フロントエンド」、コード最適化う「オプティマイザ」、CPU固有のコードを生成する「バックエンド」に分かれている。フロントエンドは言語ごと、バックエンドCPUアーキテクチャごとに用意されている。

フロントエンドバックエンド開発・追加することで新しい言語やプロセッサに対応させることができ、標準のフロントエンド以外にもPascalCOBOLVHDLなど様々な言語用のフロントエンド開発・公開されている。

バックエンドが標準で対応するCPUアーキテクチャの種類も豊富で、インテルIntel)系プロセッサx86およびx86-64)のほか、ARM(AArch32およびAArch64)やPowerPC、AVR、RISC-V、z/Architectureなど様々な命令セットアーキテクチャISA)の機械語プログラムを生成することができる。パソコンサーバなど汎用コンピュータ向けのソフトウェア開発だけでなく、組み込み機器向けや家庭用ゲーム機向けの開発でも利用されることが多い。

gccは1987年から開発されており、GNUプロジェクトの主要な成果物の一つとして知られる。GPLGNU General Public License)と呼ばれる利用許諾(ライセンス)に基いてオープンソースソフトウェアとして公開されており、誰でも自由に入手、利用、改変、再配布などをすることができる。

(2023.9.4更新)

他の辞典による解説 (外部サイト)

この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。
ホーム画面への追加方法
1.ブラウザの 共有ボタンのアイコン 共有ボタンをタップ
2.メニューの「ホーム画面に追加」をタップ
閉じる