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