5

AppleはLLVMとClangを大いに推進しています。噂によると、Appleは(GPLv3ライセンスの問題のために)GCCを削除し、Clangに切り替えたいと考えています。

誰かがそれがいつ起こるかについて何か考えを持っていますか?

iPhoneに移植する予定のC++プロジェクトを開始していますが、C ++ 0x機能(少なくともClangでサポートされている機能)を使用する必要があるのか​​、GCCと互換性のあるコードを作成する必要があるのか​​わかりません。 4.1..。

4

1 に答える 1

13

噂によると、Appleは(GPLv3ライセンスの問題のために)GCCを削除し、Clangに切り替えたいと考えています。

これは噂ではありません、これはアップルの表明された立場です。GCCのGPLライセンスは、Appleが開発ツール内にコンパイラ/パーサーを完全に統合することを妨げています。Clang / LLVMを使用すると、そのような制限がないため、ツールを使用してはるかに多くのことができます(Xcode3.2に統合されたClangStatic Analyzerから始めて、Xcode 4でさらに進んでいきます)。

ライセンスの問題を超えて、Clang / LLVMはGCCよりもはるかに高速にビルドされ、Appleのベンチマーク(および私自身の経験)では、GCCよりもパフォーマンスの高い実行可能ファイルを作成します。また、はるかに役立つエラーメッセージも生成されます。モジュール方式で設計されているため、今後のGCCよりも保守と拡張が容易になります。

Appleは、エクスポートされたテンプレートを除くすべてのC ++機能が、Xcode 4の次期LLVMコンパイラ2.0でサポートされると述べており、コンパイラはしばらくの間セルフホスティングされています。待つことができない場合、またはXcode 4開発者プレビューを試したくない場合は、メインのLLVMサイトからソースコードを入手して、コンパイラーを今すぐチェックアウトできます。

セッション300-「DeveloperToolsStateoftheUnion」およびセッション312-「LLVMコンパイラの新機能」の無料で入手できるWWDC2010ビデオを視聴することを強くお勧めします。ここでは、LLVMコンパイラで現在取り組んでいることを説明しています。

タイミング的には、Appleだけがいつ何かをするかを教えてくれますし、彼らでさえ、いつ何かがプライムタイムの準備ができるかを正確に知ることはできません。Xcode開発者プレビューの改善の軌跡に基づいて知識に基づいた推測を行うことができますが、それだけです。ただし、Clang / LLVMはAppleのやり方なので、それを計画してみませんか?

于 2010-12-12T15:38:30.683 に答える