次の方法で共有


MSB8020診断コード

この記事では、MSB8020エラー メッセージについて説明します。

メッセージ テキスト

MSB8020: The build tools for *toolset-name* (Platform Toolset = '*platform-toolset*') cannot be found. To build using the *platform-toolset* build tools, please install *toolset-name* build tools. Alternatively, you may upgrade to the current Visual Studio tools by selecting the Project menu or right-click the solution, and then selecting "Retarget solution".

説明

このエラーは、ビルドに必要なプラットフォーム ツールセットがインストールされていないか、必要なフォルダーが存在しない場合に発生します。

プラットフォーム ツールセットは、特定のバージョンの Microsoft C++ (MSVC) およびターゲット プラットフォーム用のビルド ツールのコレクションです。

C++ プロジェクトの場合、 $(PlatformToolset) プロパティ (v143 など) は Visual Studio インストール内の特定のフォルダーを指します。 このフォルダーには、特定のビルド ツールセットをサポートする MSBuild .props ファイルと .targets ファイルが含まれています。 詳細については、「 新しいプラットフォーム ツールセットの追加」を参照してください。

解像度

ネイティブ ツールはアーキテクチャ固有であり、ターゲット アーキテクチャを表すプラットフォーム ($(Platform)) ごとにインストールする必要があります。 たとえば、Windows デスクトップ ARM64 のサポートでは、個々のコンポーネントにある MSVC ARM64 コンポーネントをインストールする必要があります。 詳細については、「 Visual Studio の変更」を参照してください。

ユニバーサル Windows プラットフォーム (UWP) プロジェクト (つまり、 $(ApplicationType) が "Windows ストア" に設定されているプロジェクト) の場合、UWP ワークフローの一部として特定の UWP MSVC バージョン (v143、v142 など) をインストールする必要があります。これは省略可能なコンポーネントです。 デスクトップ MSVC サポートのみをインストールし、UWP コンポーネントをインストールしない場合、UWP プロジェクトをビルドしようとするとMSB8020 エラーが発生します。 各 UWP MSVC ツールセットには、すべてのターゲット アーキテクチャのサポートが含まれています。

不足しているプラットフォーム ツールセットは、Visual Studio C++ Project システムの拡張性とツールセットの統合に関するページで説明されているように、Visual Studio 拡張機能から入手することもできます。 Visual Studio 拡張機能ギャラリーでツールセットの名前を検索し、インストールします。

対象

MSBuild のすべてのバージョン