このページでは、Windows に Bazel をインストールするための要件と手順について説明します。また、トラブルシューティングや、Chocolatey や Scoop を使用した Bazel のインストール方法も記載されています。
Bazel のインストール
このセクションでは、Windows でのインストールの前提条件、環境の設定、詳細な手順について説明します。
システムを確認する
推奨: 64 ビット Windows 10、バージョン 1703(クリエイター アップデート)以降
Windows のバージョンを確認する方法は次のとおりです。
- [スタート] ボタンをクリックします。
- 検索ボックスに「
winver
」と入力して Enter キーを押します。 - Windows バージョン情報を含む [Windows について] ボックスが表示されます。
前提条件をインストールする
Bazel をダウンロードする
推奨: Bazelisk を使用する
代替手段:
- GitHub から Bazel バイナリ(
bazel-version-windows-x86_64.exe
)をダウンロードします。 - Chocolatey から Bazel をインストールする
- Scoop から Bazel をインストールする
- ソースから Bazel をビルドする
環境の設定
デフォルトでコマンド プロンプトまたは PowerShell から Bazel に簡単にアクセスできるようにするには、Bazel バイナリの名前を bazel.exe
に変更して、デフォルトのパスに追加します。
set PATH=%PATH%;path to the Bazel binary
システムの PATH
環境変数を変更して永続的にすることもできます。環境変数を設定する方法を確認する。
完了
「成功: Bazel がインストールされました。」
インストールが正しいことを確認するには、次のコマンドを実行します。
bazel version
その他のヒントとガイダンスについては、以下をご覧ください。
コンパイラと言語ランタイムのインストール
ビルドする言語に応じて、次のものが必要になります。
-
MSYS2 は、Windows 用のソフトウェア ディストリビューションとビルド プラットフォームです。Bash と一般的な Unix ツール(
grep
、tar
、git
など)が含まれています。Bash に依存するターゲットをビルド、テスト、実行するには、MSYS2 が必要です。通常は
genrule
、sh_binary
、sh_test
ですが、他にも存在することもあります(Starlark ルールなど)。ビルド ターゲットに Bash が必要であるにもかかわらず、Bazel が Bash を見つけられない場合は、エラーが表示されます。 一般的な MSYS2 パッケージ
これらは、Bash に依存するターゲットをビルドして実行するために必要になることがあります。MSYS2 にはこれらのツールがデフォルトでインストールされていないため、手動でインストールする必要があります。
PATH
の Bash ツールに依存するプロジェクト(TensorFlow など)では、この手順が必要です。MSYS2 ターミナルを開き、次のコマンドを実行します。
pacman -S zip unzip patch diffutils git
省略可: CMD または Powershell の Bazel を使用し、Bash ツールを引き続き使用する場合は、必ず
MSYS2_INSTALL_PATH/usr/bin
をPATH
環境変数に追加してください。Build Tools for Visual Studio 2019
Windows で C++ コードをビルドするには、これが必要になります。
サポートされているもの:
- Visual C++ Build Tools 2017(またはそれ以降)と Windows 10 SDK
Windows x64 用 Java SE Development Kit 11(JDK)
Windows で Java コードをビルドするには、これが必要になります。
サポートされているバージョン: Java 8、9、10
-
Windows で Python コードをビルドするには、このパッケージが必要です。
サポート対象: Python 2.7 以降(Windows x86-64)
トラブルシューティング
Bazel が Bash または bash.exe を見つけられない
考えられる原因:
MSYS2 をデフォルトのインストール パスにインストールしていない
MSYS2 x86_64 ではなく MSYS2 i686 をインストールしている
MSYS2 の代わりに MSYS をインストールしました
解決策:
MSYS2 x86_64 がインストールされていることを確認します。
それでも解決しない場合は、次の手順を試してください。
スタートメニュー > [設定] に移動します。
[アカウントの環境変数を編集] 設定を見つけます。
上部のリスト([<username>] のユーザー属性)を確認し、その下にある [New...] ボタンをクリックします。
[Variable name] に「
BAZEL_SH
」と入力します。[ファイルを参照...] をクリックします。
MSYS2 ディレクトリに移動し、その下の
usr\bin
に移動します。たとえば、システムでは
C:\msys64\usr\bin
になります。bash.exe
ファイルまたはbash
ファイルを選択して [OK] をクリックします。[変数の値] フィールドに
bash.exe
へのパスが表示されます。[OK] をクリックしてウィンドウを閉じます。これだけです。
新しい cmd.exe または PowerShell ターミナルを開いて Bazel を実行すると、Bash が見つかります。
Bazel が Visual Studio または Visual C++ を見つけない
考えられる原因:
複数のバージョンの Visual Studio をインストールした
さまざまなバージョンの Visual Studio をインストールして削除した
さまざまなバージョンの Windows SDK がインストールされている
デフォルトのインストール パス以外で Visual Studio をインストールした
解決策:
スタートメニュー > [設定] に移動します。
[アカウントの環境変数を編集] 設定を見つけます。
上部にあるリスト(<username> のユーザー変数)を確認し、その下にある [新規...] ボタンをクリックします。
[Variable name] に「
BAZEL_VC
」と入力します。[Browse Directory...] をクリックします。
Visual Studio の
VC
ディレクトリに移動します。たとえば、システムでは
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC
になります。VC
フォルダを選択して [OK] をクリックします。[変数の値] フィールドに
VC
へのパスが表示されます。[OK] をクリックしてウィンドウを閉じます。これだけです。
新しい cmd.exe または PowerShell ターミナルを開いて Bazel を実行すると、Visual C++ が検出されます。
Bazel をインストールするその他の方法
Chocolatey を使用する
Chocolatey パッケージ マネージャーをインストールします。
Bazel パッケージをインストールします。
choco install bazel
このコマンドを実行すると、利用可能な最新バージョンの Bazel とその依存関係(MSYS2 シェルなど)がインストールされます。ただし、Visual C++ はインストールされません。
Chocolatey パッケージの詳細については、Chocolatey のインストールとパッケージのメンテナンス ガイドをご覧ください。
Scoop の使用
次の PowerShell コマンドを使用して、Scoop パッケージ マネージャーをインストールします。
iex (new-object net.webclient).downloadstring('https://get.scoop.sh')
Bazel パッケージをインストールします。
scoop install bazel
Scoop パッケージの詳細については、Scoop のインストールとパッケージのメンテナンス ガイドをご覧ください。
ソースからビルドする
インストールではなく Bazel をゼロからビルドするには、ソースからコンパイルするをご覧ください。