Repolode
llvm

llvm/llvm-project

LLVMコア、Clang C/C++フロントエンド、libc++、LLDリンカーなどを含む、モジュール式のコンパイラおよびツールチェーン技術群。

スター
41,146
フォーク
19,227
未解決の Issue
40,870
最終コミット
1 時間前

これは何?

LLVMは、最適化コンパイラやオプティマイザー、ランタイム環境を構築するためのツールキットです。LLVMのコアコンポーネントは、中間表現を処理してオブジェクトファイルに変換するために必要なライブラリ、ツール、ヘッダーファイルを提供します。これには、アセンブラー、逆アセンブラー、ビットコードアナライザー、ビットコードオプティマイザーが含まれます。

このプロジェクトには、C、C++、Objective-C、Objective-C++のコードをLLVMビットコードにコンパイルし、さらにオブジェクトファイルに変換するフロントエンドのClangも含まれます。同じリポジトリには、C++標準ライブラリのlibc++や、LLDリンカーなどのコンポーネントもあります。

このリポジトリはこれらのプロジェクトのモノレポなので、コンパイラ、言語ツール、コードジェネレーターを開発する人は、共通のインフラを一か所で利用できます。

主な機能

  • 01再利用可能な中間表現とコード生成インフラを提供します。
  • 02C、C++、Objective-C、Objective-C++向けのフロントエンド、Clangを含みます。
  • 03C++標準ライブラリの実装であるlibc++を提供します。
  • 04LLDリンカーをはじめとするツールチェーンコンポーネントを含みます。
  • 05アセンブラー、逆アセンブラー、ビットコードオプティマイザーなどのツールを提供します。

ユースケース

  • 新しいプログラミング言語向けのコンパイラやコードジェネレーターを構築する。
  • ClangツールチェーンでCまたはC++のプロジェクトをコンパイルする。
  • LLVM中間表現を対象とする最適化パスを作成する。
  • LLDリンカーでネイティブバイナリをリンクする。

クイックスタート

  1. 1

    LLVMをソースからビルドするための「Getting Started」ガイドを読む

  2. 2

    ソースコードを取得してLLVMをビルドする

使う前に知っておきたいこと

  • ソースからのビルドは大規模な作業で、コンパイルにかなりの時間がかかり、ディスク容量も多く必要です。
  • READMEにはパッケージマネージャーを使ったインストール方法が記載されていないため、リポジトリからビルドする必要があります。

トピック

よくある質問

llvm-project とは?
LLVMコア、Clang C/C++フロントエンド、libc++、LLDリンカーなどを含む、モジュール式のコンパイラおよびツールチェーン技術群。 LLVMは、最適化コンパイラやオプティマイザー、ランタイム環境を構築するためのツールキットです。LLVMのコアコンポーネントは、中間表現を処理してオブジェクトファイルに変換するために必要なライブラリ、ツール、ヘッダーファイルを提供します。これには、アセンブラー、逆アセンブラー、ビットコードアナライザー、ビットコードオプティマイザーが含まれます。
llvm-project は無料で使えますか?ライセンスは?
llvm-project は Other ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
llvm-project は今もメンテナンスされていますか?
活発にメンテナンス中。llvm-project の最終コミットは 2026年10月22日 です。
llvm-project は何に使えますか?
新しいプログラミング言語向けのコンパイラやコードジェネレーターを構築する。 ClangツールチェーンでCまたはC++のプロジェクトをコンパイルする。 LLVM中間表現を対象とする最適化パスを作成する。 LLDリンカーでネイティブバイナリをリンクする。
llvm-project のインストール方法は?
LLVMをソースからビルドするための「Getting Started」ガイドを読む ソースコードを取得してLLVMをビルドする
llvm-project はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/llvm/llvm-project

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト