Windows への Bazel のインストール

問題を報告する ソースを表示

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

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 環境変数を変更して、永続的にすることもできます。環境変数を設定する方法を確認する。

完了

「成功: Bazel がインストールされました。」

インストールが正しいかどうかを確認するには、次のコマンドを実行します。

bazel version

次に、その他のヒントやガイダンスをご紹介します。

コンパイラと言語ランタイムのインストール

構築する言語によっては、以下が必要です。

  • MSYS2×86_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 ツールを引き続き使用する場合は、PATH 環境変数に MSYS2_INSTALL_PATH/usr/bin を追加します。

  • 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

  • Python 3.6(Windows x86-64 用)

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

    その他: Windows x86-64 用 Python 2.7 以降

トラブルシューティング

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

考えられる理由:

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

  • MSYS2x86_64 の代わりに MSYS2i686 をインストールしました

  • 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. Done.

    新しい 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. Done.

    新しい 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 をゼロから構築するには、ソースからコンパイルするをご覧ください。