--- layout: documentation title: Installing Bazel on macOS --- # Installing Bazel on macOS Install Bazel on macOS using one of the following methods: * [Use Homebrew (recommended)](#install-on-mac-os-x-homebrew) * [Use the binary installer](#install-with-installer-mac-os-x) * [Compile Bazel from source](install-compile-source.md) Bazel comes with two completion scripts. After installing Bazel, you can: * access the [bash completion script](install.md) * install the [zsh completion script](install.md) ## Installing using Homebrew ### 1. Install JDK 8 JDK 8 can be downloaded from [Oracle's JDK Page](http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html). Look for "macOS" under "Java SE Development Kit". This will download a DMG image with an install wizard. ### 2. Install Homebrew on macOS Installing Homebrew is a one-time setup: ```bash /usr/bin/ruby -e "$(curl -fsSL \ https://raw.githubusercontent.com/Homebrew/install/master/install)" ``` ### 3. Install Bazel Homebrew Package ```bash brew install bazel ``` You are all set. You can confirm Bazel is installed successfully by running ```bash bazel version ``` Once installed, you can upgrade to a newer version of Bazel with: ```bash brew upgrade bazel ``` ## Installing using binary installer The binary installers are on Bazel's [GitHub releases page](https://github.com/bazelbuild/bazel/releases). The installer contains the Bazel binary and the required JDK. Some additional libraries must also be installed for Bazel to work. ### 1. Install XCode command line tools Xcode can be downloaded from the [Apple Developer Site](https://developer.apple.com/xcode/downloads/) (this link redirects to their App Store). For `objc_*` and `ios_*` rule support, you must have Xcode 6.1 or later with iOS SDK 8.1 installed on your system. Once XCode is installed, you can agree to the license agreement for all users with the following command: ``` sudo xcodebuild -license accept ``` ### 2. Download the Bazel installer **Note:** In the installer file names listed in this document, replace `` with the appropriate Bazel version number. Go to Bazel's [GitHub releases page](https://github.com/bazelbuild/bazel/releases). Download the binary installer `bazel--installer-darwin-x86_64.sh`. This installer contains the Bazel binary and the required JDK, and can be used even if a JDK is already installed. Note that `bazel--without-jdk-installer-darwin-x86_64.sh` is a version of the installer without embedded JDK 8. Only use this installer if you already have JDK 8 installed. ### 3. Run the installer Run the installer:
chmod +x bazel--installer-darwin-x86_64.sh
./bazel--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. ### 4. Set up your environment If you ran the Bazel installer with the `--user` flag as above, the Bazel executable is installed in your `$HOME/bin` directory. It's a good idea to add this directory to your default paths, as follows: ```bash export PATH="$PATH:$HOME/bin" ``` You can also add this command to your `~/.bashrc` or `~/.profile` file. You are all set. You can confirm Bazel is installed successfully by running ```bash bazel version ``` When Bazel is installed using the binary installer, updating Bazel is only possible by downloading and installing a new release.