Windows への Bazel のインストール

このページでは、Windows に Bazel をインストールするための要件と手順について説明します。 また、トラブルシューティングや、Bazel のインストール方法( Chocolatey や Scoop を使用する方法など)についても説明します。

Bazel をインストールする

このセクションでは、Windows へのインストール時の前提条件、環境設定、詳細な 手順について説明します。

システムを確認する

推奨: 64 ビット Windows 10 バージョン 1703(Creators Update)以降

Windows のバージョンを確認するには:

  • [スタート] ボタンをクリックします。
  • 検索ボックスに「winver」と入力して Enter キーを押します。
  • Windows のバージョン情報が表示された [Windows について] ボックスが表示されます。

前提条件をインストールする

Bazel をダウンロードする

推奨: Bazelisk を使用する

代替手段:

環境の設定

デフォルトでコマンド プロンプトまたは PowerShell から Bazel に簡単にアクセスできるようにするには、Bazel バイナリの名前を bazel.exe に変更して、デフォルトのパスに追加します。

set PATH=%PATH%;path to the Bazel binary

システムの PATH 環境変数を変更して、永続的にすることもできます。環境変数を設定する方法をご覧ください。

完了

「Success: You've installed Bazel.」

インストールが正しく行われていることを確認するには、次のコマンドを実行します。

bazel version

その他のヒントとガイダンスについては、以下をご覧ください。

コンパイラと言語ランタイムをインストールする

ビルドする言語に応じて、次のものが必要になります。

  • MSYS2 x86_64

    MSYS2 は、Windows 用のソフトウェア ディストリビューションとビルド プラットフォームです。Bash と一般的な Unix ツール(greptargit など)が含まれています。

    Bash に依存するターゲットをビルド、テスト、実行するには、MSYS2 が必要です。通常、これらは genrulesh_binarysh_test ですが、他にも(Starlark ルールなど)あります。ビルド ターゲットで Bash が必要で、Bazel がそれを見つけられない場合、Bazel は エラーを表示します。

  • 一般的な MSYS2 パッケージ

    Bash に依存するターゲットをビルドして実行するには、これらが必要になる可能性があります。MSYS2 はデフォルトでは これらのツールをインストールしないため、手動でインストールする必要があります。PATH の Bash ツールに依存するプロジェクトでは、この手順が必要です(TensorFlow など)。

    MSYS2 ターミナルを開いて、次のコマンドを実行します。

    pacman -S zip unzip patch diffutils git

    省略可: CMD または Powershell から Bazel を使用し、Bash ツールも使用できるようにするには、 を MSYS2_INSTALL_PATH/usr/bin環境変数に PATH追加します。

  • 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 x86-64 用 Python 3.6

    Windows で Python コードをビルドするには、これが必要です。

    サポートされているもの: Windows x86-64 用 Python 2.7 以降

トラブルシューティング

Bazel が Bash または bash.exe を見つけられない

考えられる原因:

  • デフォルトのインストール パスに MSYS2 をインストールしていない

  • MSYS2 x86_64 ではなく MSYS2 i686 をインストールした

  • MSYS2 ではなく MSYS をインストールした

解決策:

MSYS2 x86_64 をインストールしていることを確認します。

それでも解決しない場合は、次の手順を行います。

  1. [スタート] メニュー > [設定] に移動します。

  2. [アカウントの環境変数を編集] 設定を見つけます。

  3. 上部のリスト([<ユーザー名> のユーザー変数])を確認し、その下の [新規...] ボタンをクリックします。

  4. [変数名] に「BAZEL_SH」と入力します。

  5. [ファイルの参照...] をクリックします。

  6. MSYS2 ディレクトリに移動し、その下の usr\bin に移動します。

    たとえば、システム上の C:\msys64\usr\bin などです。

  7. bash.exe または bash ファイルを選択して [OK] をクリックします。

  8. [変数値] フィールドに bash.exe のパスが表示されます。[OK] をクリックしてウィンドウを閉じます。

  9. 完了。

    新しい cmd.exe または PowerShell ターミナルを開いて Bazel を実行すると、Bash が見つかります。

Bazel が Visual Studio または Visual C++ を見つけられない

考えられる原因:

  • 複数のバージョンの Visual Studio をインストールした

  • さまざまなバージョンの Visual Studio をインストールして削除した

  • さまざまなバージョンの Windows SDK をインストールした

  • デフォルトのインストール パスに Visual Studio をインストールしていない

解決策:

  1. [スタート] メニュー > [設定] に移動します。

  2. [アカウントの環境変数を編集] 設定を見つけます。

  3. 上部のリスト([<ユーザー名> のユーザー変数])を確認し、その下の [新規...] ボタンをクリックします。

  4. [変数名] に「BAZEL_VC」と入力します。

  5. [ディレクトリの参照...] をクリックします。

  6. Visual Studio の VC ディレクトリに移動します。

    たとえば、システム上の C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC などです。

  7. VC フォルダを選択して [OK] をクリックします。

  8. [変数値] フィールドに VC のパスが表示されます。[OK] をクリックしてウィンドウを閉じます。

  9. 完了。

    新しい cmd.exe または PowerShell ターミナルを開いて Bazel を実行すると、Visual C++ が見つかります。

Bazel をインストールするその他の方法

Chocolatey を使用する

  1. Chocolatey パッケージ マネージャーをインストールする

  2. Bazel パッケージをインストールします。

    choco install bazel

    このコマンドは、Bazel の最新バージョンと その依存関係(MSYS2 シェルなど)をインストールします。ただし、Visual C++ はインストールされません。

Chocolatey パッケージの詳細については、Chocolatey のインストールとパッケージのメンテナンス ガイドをご覧ください。

Scoop を使用する

  1. 次の PowerShell コマンドを使用して、Scoop パッケージ マネージャーをインストールします。

    iex (new-object net.webclient).downloadstring('https://get.scoop.sh')
  2. Bazel パッケージをインストールします。

    scoop install bazel

Scoop パッケージの詳細については、Scoop のインストールとパッケージのメンテナンス ガイドをご覧ください。

ソースからビルドする

インストールするのではなく、Bazel をゼロからビルドするには、ソースからコンパイルするをご覧ください。