連絡先 最初に戻る ">戻る 次へ進む
$Date: 2017-05-06 22:21:48 +0900 (2017/05/06 (土)) $
$Revision: 1117 $

LLVM/clang コンパイル Windows (VC)

svn から取得

checkout.bat
set DIR=%~dp0

cd /d %DIR%
rmdir /s /q llvm
svn co http://llvm.org/svn/llvm-project/llvm/trunk llvm

cd /d %DIR%
cd llvm\tools
svn co http://llvm.org/svn/llvm-project/cfe/trunk clang

cd /d %DIR%
cd llvm\tools
svn co http://llvm.org/svn/llvm-project/lld/trunk lld

cd /d %DIR%
cd llvm\tools
svn co http://llvm.org/svn/llvm-project/polly/trunk polly

cd /d %DIR%
cd llvm\projects
svn co http://llvm.org/svn/llvm-project/compiler-rt/trunk compiler-rt

cd /d %DIR%
cd llvm\projects
svn co http://llvm.org/svn/llvm-project/openmp/trunk openmp

cd /d %DIR%
cd llvm\projects
svn co http://llvm.org/svn/llvm-project/libcxx/trunk libcxx
svn co http://llvm.org/svn/llvm-project/libcxxabi/trunk libcxxabi

CMake

CMake はWindows や Linux や Mac に対応したクロスプラットフォームのビルドツールです
CMake のページ を作りました。

プロジェクトの生成

..\llvm はソースコードツリーのパスです。

インストールされている最新の Visual Studioを使う場合

generate-vc.bat
rmdir /s /q build-llvm
mkdir build-llvm
cd build-llvm
cmake ^
-D CMAKE_INSTALL_PREFIX=c:\clang ^
..\llvm

Visual Studio 2017 を使う場合

generate-vc2017.bat
rmdir /s /q build2017-llvm
mkdir build2017-llvm
cd build2017-llvm
cmake ^
-G "Visual Studio 15 2017" ^
-D CMAKE_INSTALL_PREFIX=c:\clang ^
..\llvm

Visual Studio 2015 を使う場合

generate-vc2015.bat
rmdir /s /q build2015-llvm
mkdir build2015-llvm
cd build2015-llvm
cmake ^
-G "Visual Studio 14 2015" ^
-D CMAKE_INSTALL_PREFIX=c:\clang ^
..\llvm

Ninjaを使う場合

call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat" x86

rmdir /s /q build-ninja-llvm
mkdir       build-ninja-llvm
cd          build-ninja-llvm
cmake ^
-G Ninja ^
-D CMAKE_INSTALL_PREFIX=c:\clang ^
-D CMAKE_BUILD_TYPE=Release ^
..\llvm

ビルド

Visual Studio を使う場合

LLVM.sln をダブルクリックして開き、ソリューションのビルドを行います。

Ninjaを使う場合

ninja

パッケージの作成

インストーラを作成します。
NSIS を使うのでダウンロードしてインストールします。

Visual Studio を使う場合

Visual Studio からPackage プロジェクトをビルドします。
でも r301888 現在ではパッケージの作成に失敗します。

Ninjaを使う場合

ninja package
LLVM-5.0.0svn-win32.exe というファイルがビルドディレクトリのトップに作成されます。