1.. _toolchain_designware_arc_mwdt: 2 3DesignWare ARC MetaWare Development Toolkit (MWDT) 4################################################## 5 6#. You need to have `ARC MWDT <https://www.synopsys.com/dw/ipdir.php?ds=sw_metaware>`_ installed on 7 your host. 8 9#. You need to have :ref:`Zephyr SDK <toolchain_zephyr_sdk>` installed on your host. 10 11 .. note:: 12 A Zephyr SDK is used as a source of tools like device tree compiler (DTC), QEMU, etc... 13 Even though ARC MWDT toolchain is used for Zephyr RTOS build, still the GNU preprocessor & GNU 14 objcopy might be used for some steps like device tree preprocessing and ``.bin`` file 15 generation. We used Zephyr SDK as a source of these ARC GNU tools as well. 16 To setup ARC GNU toolchain please use SDK Bundle (Full or Minimal) instead of manual installation 17 of separate tarballs. It installs and registers toolchain and host tools in the system, 18 that allows you to avoid toolchain related issues while building Zephyr. 19 20#. :ref:`Set these environment variables <env_vars>`: 21 22 - Set :envvar:`ZEPHYR_TOOLCHAIN_VARIANT` to ``arcmwdt``. 23 - Set :envvar:`ARCMWDT_TOOLCHAIN_PATH` to the toolchain installation directory. MWDT installation 24 provides :envvar:`METAWARE_ROOT` so simply set :envvar:`ARCMWDT_TOOLCHAIN_PATH` to 25 ``$METAWARE_ROOT/../`` (Linux) or ``%METAWARE_ROOT%\..\`` (Windows). 26 27 .. tip:: 28 If you have only one ARC MWDT toolchain version installed on your machine you may skip setting 29 :envvar:`ARCMWDT_TOOLCHAIN_PATH` - it would be detected automatically. 30 31#. To check that you have set these variables correctly in your current 32 environment, follow these example shell sessions (the 33 :envvar:`ARCMWDT_TOOLCHAIN_PATH` values may be different on your system): 34 35 .. code-block:: console 36 37 # Linux: 38 $ echo $ZEPHYR_TOOLCHAIN_VARIANT 39 arcmwdt 40 $ echo $ARCMWDT_TOOLCHAIN_PATH 41 /home/you/ARC/MWDT_2023.03/ 42 43 # Windows: 44 > echo %ZEPHYR_TOOLCHAIN_VARIANT% 45 arcmwdt 46 > echo %ARCMWDT_TOOLCHAIN_PATH% 47 C:\ARC\MWDT_2023.03\ 48