😸

LLVM/Clang Build

2023/03/06に公開

どうも、インフラエンジニアです
色々あってLLVM/Clangを触ることが増えたのでLLVM/ClangをBuildする手順をメモとして残しておきます
原則として公式の資料を参照することを推奨します
https://llvm.org/docs/GettingStarted.html
https://clang.llvm.org/get_started.html

環境

仮想環境で実行します

構成部品 詳細
RAM 32GB
vCPU 8
Disk 200G
OS rocky9.0

大体このくらいでBuildにかかる時間は30分くらいです

事前準備

  1. 依存パッケージのインストール
sudo dnf install cmake gcc g++ python zlib make

基本的には上記で十分です。
以下も必要ですが、最初からインストールされていると思います
存在しない場合は適宜インストールしてください

コマンド パッケージ
ar binutils
bzip2 bzip2
bunzip2 bzip2
chmod coreutils
cat coreutils
cp coreutils
date coreutils
echo coreutils
egrep grep
find findutils
grep grep
gzip gzip
gunzip gzip
install coreutils
mkdir coreutils
mv coreutils
ranlib binutils
rm binutils
sed sed
sh bash
tar tar
test coreutils
unzip unzip
zip zip
  1. ninjaのインストール

バイナリインストールします

curl -L https://github.com/ninja-build/ninja/releases/download/v1.11.1/ninja-linux.zip -o ninja-linux.zip
sudo unzip ninja-linux.zip -d /usr/local/bin/
  1. LLVMのクローン
sudo dnf install git
git clone --depth=1 https://github.com/llvm/llvm-project.git

LLVM/Clang Build

cd llvm-project
mkdir build
cd build
CC=gcc CXX=g++ cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_PROJECTS=clang ../llvm
ninja

llvmのバイナリができていれば成功です

[rocky@localhost ~]$ llvm-project/build/bin/clang --version
clang version 17.0.0 (https://github.com/llvm/llvm-project.git fb661e2554394a5cdb27a84a2746b4bd4596cb1f)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /home/rocky/llvm-project/build/bin

Discussion