設定 - Visual Studio (C++)
概要
LLVM / Clang
LLVM / Clangを使用して、Windows / Linuxを対象とするVisual Studioプロジェクト (MSBuild) を編集、ビルド、デバッグすることができる。
インストール
Visual StudioでのIDEのサポートを活用するために、Windows向けの最新のClangコンパイラツールを使用することを推奨する。
まず、Visual Studioインストーラを起動して、[C++によるデスクトップ開発]オプションの下にある[Windows用C++ Clangコンパイラ]を選択してインストールする。
この時、[MSBuild support for LLVM (clang-cl) toolset]チェックボックスにチェックを入力する。
Windowsプロジェクト向けの構成
Visual StudioプロジェクトをClangを使用するように構成する場合、ソリューションエクスプローラでプロジェクトノードを右クリックして[プロパティ]を選択する。
通常は、ダイアログ上部にある[すべての構成] - [全般] - [プラットフォーム ツールセット]プルダウンから、[LLVM (clang-cl)]を選択して[OK]ボタンを押下する。
Visual StudioにバンドルされているClangツールを使用する場合は、追加の手順は不要である。
Windowsプロジェクトの場合、Visual Studioの既定では、Clangがclang-clモードで呼び出される。
これは、標準ライブラリのMicrosoftによる実装とリンクされる。
既定では、clang-cl.exeは、%VCINSTALLDIR%\Tools\Llvm\bin\と%VCINSTALLDIR%\Tools\Llvm\x64\bin\に存在する。
Linuxプロジェクト向けの構成
Linuxプロジェクトの場合、Visual StudioではClang GCCと互換性のあるフロントエンドが使用される。
プロジェクトのプロパティとほぼ全てのコンパイラフラグは同じである。
Visual StudioのLinuxプロジェクトにおいて、Clangが使用できるように構成する。
- ソリューションエクスプローラのプロジェクトノードを右クリックして、[プロパティ]を選択する。
- ダイアログ上部にある[すべての構成]を選択する。
- WSLを使用する場合は、[全般] - [プラットフォーム ツールセット]から[Linux 用 Windows サブシステムの Clang]を選択する。
リモートコンピュータまたは仮想マシンを使用する場合は、[リモート Linux の Clang]を選択する。 - [OK]ボタンを押下して、設定を保存する。
- 環境変数
PATH
で検出された最初のClangの場所が既定となる。 - Clangのカスタムインストールを使用する場合は、
LLVMInstallDir
プロパティの値を変更する、または、
[プロジェクト] - [プロパティ] - [構成プロパティ] - [VC++ ディレクトリ] - [実行可能ファイルのディレクトリ]でパスを入力する。
カスタムLLVMの場所とツールセットの設定
LLVMへのカスタムパスを設定して、プロジェクトのカスタムLLVMツールセットを設定する場合、
プロジェクトのルートディレクトリ (ソリューションディレクトリ) に移動して、Directory.build.propsファイルを作成する。
<Project>
<PropertyGroup>
<LLVMInstallDir>ソリューションディレクトリのパス 例: C:\MySolutionDir</LLVMInstallDir>
<LLVMToolsVersion>LLVMのバージョン 例: 17.0.6</LLVMToolsVersion>
</PropertyGroup>
</Project>
カスタムLLVMツールセットのバージョンの設定
Visual Studio 2019 バージョン 16.9以降では、Visual StudioでLLVMのカスタムツールセットが設定できる。
- まず、[プロパティページ]ダイアログを開く。
- [構成プロパティ] - [全般] - [プラットフォーム ツールセット]プルダウンを[LLVM (clang-cl)]に変更する。
- [適用]ボタンを押下して、変更を保存する。
- 次に、[構成プロパティ] - [詳細] - [LLVMツールセットバージョン]において、開発者が使用するバージョンに変更する。
- [OK]ボタンを押下して、変更を保存する。
- ソリューションエクスプローラのプロジェクトノードを右クリックして、[プロジェクトの再読み込み]を選択する。
これにより、LLVM / Clangを使用してプロジェクトのビルドおよびデバッグが実行できる。
※注意 1
[LLVMツールセットバージョン]は、LLVMプラットフォームツールセットが選択されている場合にのみ表示される。
※注意 2
Directory.build.propsファイルをプロジェクトまたはソリューションに追加すると、設定はプロジェクトの[プロパティページ]ダイアログに既定値として表示される。
ただし、Visual Studioでこれらのプロパティを変更する場合、Directory.build.propsファイル内の設定がオーバーライドされる。
ビルド / デバッグ
Visual Studioにより、LLVM / Clangコンパイラを使用していることが検出されて、IntelliSense、強調表示、ナビゲーション、その他の編集機能が提供される。
エラーと警告は[出力]ウィンドウに表示される。
ただし、エディットコンティニュー等の一部のコンパイラ依存機能は、LLVM / Clangでは使用できない。
リンカオプションを設定する場合、プロジェクトのプロパティ画面から[構成プロパティ] - [C/C++]において、手動で追加する。
または、[リンカー] - [コマンド ライン] - [追加のオプション]において、手動で追加する。
デバッグ時には、ブレークポイント、メモリとデータの視覚化、その他の多くのデバッグ機能が使用できる。