This is the documentation for the latest (main) development branch of Zephyr. If you are looking for the documentation of previous releases, use the drop-down list at the bottom of the left panel and select the desired version.

GNU Arm Embedded

  1. Download and install a GNU Arm Embedded build for your operating system and extract it on your file system.


    On Windows, we’ll assume for this guide that you install into the directory C:\gnu_arm_embedded. You can also choose the default installation path used by the ARM GCC installer, in which case you will need to adjust the path accordingly in the guide below.


    On macOS Catalina or later you might need to change a security policy for the toolchain to be able to run from the terminal.

  2. Set these environment variables:

  3. To check that you have set these variables correctly in your current environment, follow these example shell sessions (the GNUARMEMB_TOOLCHAIN_PATH values may be different on your system):

    # Linux, macOS:
    # Windows:


    On macOS, if you are having trouble with the suggested procedure, there is an unofficial package on brew that might help you. Run brew install gcc-arm-embedded and configure the variables

    • Set ZEPHYR_TOOLCHAIN_VARIANT to gnuarmemb.

    • Set GNUARMEMB_TOOLCHAIN_PATH to the brew installation directory (something like /usr/local)