Project: /_project.yaml Book: /_book.yaml
{% include “_buttons.html” %}
This page describes how to install Bazel on macOS and set up your environment.
You can install Bazel on macOS using one of the following methods:
Bazel comes with two completion scripts. After installing Bazel, you can:
Install Homebrew (a one-time step):
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Install the Bazel package via Homebrew as follows:
brew install bazel
All set! You can confirm Bazel is installed successfully by running the following command:
bazel --version
Once installed, you can upgrade to a newer version of Bazel using the following command:
brew upgrade bazel
The binary installers are on Bazel's GitHub releases page{: .external}.
The installer contains the Bazel binary. Some additional libraries must also be installed for Bazel to work.
If you don't intend to use ios_*
rules, it is sufficient to install the Xcode command line tools package by using xcode-select
:
xcode-select --install
Otherwise, for ios_*
rule support, you must have Xcode 6.1 or later with iOS SDK 8.1 installed on your system.
Download Xcode from the App Store{: .external} or the Apple Developer site{: .external}.
Once Xcode is installed, accept the license agreement for all users with the following command:
sudo xcodebuild -license accept
Next, download the Bazel binary installer named bazel-<version>-installer-darwin-x86_64.sh
from the Bazel releases page on GitHub{: .external}.
On macOS Catalina or newer (macOS >= 11), due to Apple's new app signing requirements, you need to download the installer from the terminal using curl
, replacing the version variable with the Bazel version you want to download:
export BAZEL_VERSION=5.2.0 curl -fLO "https://github.com/bazelbuild/bazel/releases/download/{{ '<var>' }}$BAZEL_VERSION{{ '</var>' }}/bazel-{{ '<var>' }}$BAZEL_VERSION{{ '</var>' }}-installer-darwin-x86_64.sh"
This is a temporary workaround until the macOS release flow supports signing (#9304{: .external}).
Run the Bazel installer as follows:
chmod +x "bazel-{{ '<var>' }}$BAZEL_VERSION{{ '</var>' }}-installer-darwin-x86_64.sh" ./bazel-{{ '<var>' }}$BAZEL_VERSION{{ '</var>' }}-installer-darwin-x86_64.sh --user
The --user
flag installs Bazel to the $HOME/bin
directory on your system and sets the .bazelrc
path to $HOME/.bazelrc
. Use the --help
command to see additional installation options.
If you are on macOS Catalina or newer (macOS >= 11) and get an error that “bazel-real” cannot be opened because the developer cannot be verified, you need to re-download the installer from the terminal using curl
as a workaround; see Step 2 above.
If you ran the Bazel installer with the --user
flag as above, the Bazel executable is installed in your {{ '<var>' }}HOME{{ '</var>' }}/bin
directory. It's a good idea to add this directory to your default paths, as follows:
export PATH="{{ '<var>' }}PATH{{ '</var>' }}:{{ '<var>' }}HOME{{ '</var>' }}/bin"
You can also add this command to your ~/.bashrc
, ~/.zshrc
, or ~/.profile
file.
All set! You can confirm Bazel is installed successfully by running the following command:
bazel --version
To update to a newer release of Bazel, download and install the desired version.