「Clang」の版間の差分
編集の要約なし |
編集の要約なし |
||
| 3行目: | 3行目: | ||
==概要== | ==概要== | ||
2007年、[[gcc]]の[[ライセンス]]が[[GPL v2]]から[[GPL v3]]に変更された<ref>http://www.osnews.com/comments/18305</ref> | 2007年、[[gcc]]の[[ライセンス]]が[[GPL v2]]から[[GPL v3]]に変更された<ref>http://www.osnews.com/comments/18305</ref>。このライセンスは[[BSDライセンス]]とは相慣れないものであり[[BSD]]界隈は絶望に暮れた。そのため[[FreeBSD]]や[[OpenBSD]]などではGPL v2時代の古いgccを使い続けてきた。 | ||
そこへ颯爽と発表されたのが[[BSDライセンス]]の亜種を採用したclangと[[LLVM]]であった。滅亡の危機に瀕していた[[BSD原理主義者]]たちは歓喜し、急激にその完成度を高め、現在のかたちとなった。 | |||
clangプロジェクトの傘下に[[LLVM]]というサブプロジェクトを持っていたが、現在(LLVM2.6以降)では立場が逆転し[[LLVM]]の一部としてclangがリリースされている。 | clangプロジェクトの傘下に[[LLVM]]というサブプロジェクトを持っていたが、現在(LLVM2.6以降)では立場が逆転し[[LLVM]]の一部としてclangがリリースされている。 | ||
clangで[[コンパイル]]を行うと[[LLVM]]向けの[[中間言語]]が出力され、[[ | clangで[[コンパイル]]を行うと[[LLVM]]向けの[[中間言語]]が出力され、[[LLVM]]から[[ネイティブコード]]が出力される。このため「clangはコンパイラフロントエンド」と呼ばれることも多い。しかしながらclangを利用する[[プログラマ]]はclang(フロント)と[[LLVM]](バック)を意識する必要はほとんどないため、小難しいことは考えずに普通の[[コンパイラ]]だと考えてよい。 | ||
[[FreeBSD]]は標準の[[コンパイラ]] | [[FreeBSD]]は標準の[[コンパイラ]]として採用している。また、[[FreeBSD]]から派生した[[Mac OS X]]および[[iOS]]ではclangでも標準のコンパイラとなっている。 | ||
大規模な資金提供などを行っている団体としては、[[Apple]]、[[Google]]、[[Microsoft]]などが名を連ねている。 | 大規模な資金提供などを行っている団体としては、[[Apple]]、[[Google]]、[[Microsoft]]などが名を連ねている。 | ||
==関連項目== | ==関連項目== | ||
*[[gcc]] | *[[gcc]] | ||