Standard Setup of Toolchain for Mac OS


Install Prerequisites

ESP-IDF will use the version of Python installed by default on macOS.

  • install pip:

    sudo easy_install pip
  • install CMake & Ninja build:

    • If you have HomeBrew, you can run:

      brew install cmake ninja dfu-util
    • If you have MacPorts, you can run:

      sudo port install cmake ninja dfu-util
    • Otherwise, consult the CMake and Ninja home pages for macOS installation downloads.

  • It is strongly recommended to also install ccache for faster builds. If you have HomeBrew, this can be done via brew install ccache or sudo port install ccache on MacPorts.


If an error like this is shown during any step:

xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun

Then you will need to install the XCode command line tools to continue. You can install these by running xcode-select --install.

Installing Python 3

Basing on macOS Catalina 10.15 release notes, use of Python 2.7 is not recommended and Python 2.7 will not be included by default in future versions of macOS. Check what Python you currently have:

python --version

If the output is like Python 2.7.17, your default interpreter is Python 2.7. If so, also check if Python 3 isn’t already installed on your computer:

python3 --version

If above command returns an error, it means Python 3 is not installed.

Below is an overview of steps to install Python 3.

  • Installing with HomeBrew can be done as follows:

    brew install python3
  • If you have MacPorts, you can run:

    sudo port install python38

Python 2 deprecation

Python 2 reached its end of life and support for it in ESP-IDF will be removed soon. Please install Python 3.6 or higher. Instructions for macOS are listed above.

Next Steps

To carry on with development environment setup, proceed to Step 2. Get ESP-IDF.