IT用語集 › プログラミング › GCC Runtime Library Exception

GCC Runtime Library Exception

プログラミング Svenska → 更新: 2026-11-01

GCC でコンパイルしたプログラムがコンパイラのライセンスを引き継がないようにする GPLv3 の追加条項で、ただし正しい方法でコンパイルされていることが条件である。

GCC は libgcc や libstdc++ といったランタイムライブラリの断片を、生成するすべてのバイナリに埋め込む。例外がなければ、それらのプログラムはすべて GPL コードの派生物になってしまう。以前の GCC には libgcc だけを対象とした単純な例外があったが、GCC が GPLv3 に移行した2009年(GCC 4.4)に、単一の Runtime Library Exception に置き換えられた。SPDX 識別子は GCC-exception-3.1 である。

新しかったのは「適格なコンパイル過程(Eligible Compilation Process)」という条件だ。コンパイルに GPL 非互換のソフトウェアが関与していなければ、例外が適用される。当時 GCC にはプラグイン機構が加わろうとしており、FSF は独自の最適化パスをプラグインとして書き、なおかつ例外の恩恵を受ける、という抜け道を塞ぎたかった。配布の仕方だけでなく、ビルドの仕方まで縛るライセンスである。

← 用語集に戻る