「Clang」の版間の差分

提供: MonoBook
ナビゲーションに移動 検索に移動
 
3行目: 3行目:
  
 
==概要==
 
==概要==
2007年、[[gcc]]の[[ライセンス]]が[[GPL v2]]から[[GPL v3]]に変更された<ref>http://www.osnews.com/comments/18305</ref>[[BSD]]界隈は絶望に暮れた。それ以降も[[FreeBSD]]などでは古いgccを使い続けて耐えてきたが限界に近づきつつあった。そこへ颯爽と発表されたのが[[BSDライセンス]]の亜種を採用したclangと[[llvm]]であった。滅亡の危機に瀕していた[[BSD原理主義者]]たちは歓喜し、急激にその完成度を高め、現在のかたちとなった。
+
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]]向けの[[中間言語]]が出力され、[[llvm]]から[[ネイティブコード]]が出力されるため、「clangはコンパイラフロントエンド」と呼ばれることも多い。しかしながら、実際のところclangを利用する[[プログラマ]]はclang(フロント)とllvm(バック)を意識する必要はほとんどないため、小難しいことは考えずに普通のコンパイラだと考えてよい。
+
clangで[[コンパイル]]を行うと[[LLVM]]向けの[[中間言語]]が出力され、[[LLVM]]から[[ネイティブコード]]が出力される。このため「clangはコンパイラフロントエンド」と呼ばれることも多い。しかしながらclangを利用する[[プログラマ]]はclang(フロント)と[[LLVM]](バック)を意識する必要はほとんどないため、小難しいことは考えずに普通の[[コンパイラ]]だと考えてよい。
  
[[FreeBSD]]は標準の[[コンパイラ]]として採用している。
+
[[FreeBSD]]は標準の[[コンパイラ]]として採用している。また、[[FreeBSD]]から派生した[[Mac OS X]]および[[iOS]]ではclangでも標準のコンパイラとなっている。
また、[[Mac OS X]]および[[iOS]]ではclangはgccと共に標準のコンパイラとなっている。
 
  
 
大規模な資金提供などを行っている団体としては、[[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界隈は絶望に暮れた。そのためFreeBSDOpenBSDなどでは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でも標準のコンパイラとなっている。

大規模な資金提供などを行っている団体としては、AppleGoogleMicrosoftなどが名を連ねている。

関連項目[編集 | ソースを編集]

参考文献[編集 | ソースを編集]