West is written in Python 3 and distributed through PyPI. Use pip3
to install or upgrade west:
On Linux:
pip3 install --user -U west
On Windows and macOS:
pip3 install -U west
Note
See python-pip
for additional clarification on using the --user
switch.
Afterwards, you can run pip3 show -f west
for information on where the west binary and related files were installed.
Once west is installed, you can use it to clone the Zephyr repositories
<clone-zephyr>
.
West's code is distributed via PyPI in a Python package named west
. This distribution includes a launcher executable, which is also named west
(or west.exe
on Windows).
When west is installed, the launcher is placed by pip3
somewhere in the user's filesystem (exactly where depends on the operating system, but should be on the PATH
environment variable <env_vars>
). This launcher is the command-line entry point to running both built-in commands like west init
, west update
, along with any extensions discovered in the workspace.
In addition to its command-line interface, you can also use west's Python APIs directly. See west-apis
for details.
West currently supports shell completion in the following combinations of platform and shell:
- Linux: bash
- macOS: bash
- Windows: not available
In order to enable shell completion, you will need to obtain the corresponding completion script and have it sourced every time you enter a new shell session.
To obtain the completion script you can use the west completion
command:
cd /path/to/zephyr/
west completion bash > ~/west-completion.bash
Note
Remember to update your local copy of the completion script using west completion
when you update Zephyr.
Next, you need to import west-completion.bash
into your bash shell.
On Linux, you have the following options:
- Copy
west-completion.bash
to/etc/bash_completion.d/
. - Copy
west-completion.bash
to/usr/share/bash-completion/completions/
. - Copy
west-completion.bash
to a local folder and source it from your~/.bashrc
.
On macOS, you have the following options:
- Copy
west-completion.bash
to a local folder and source it from your~/.bash_profile
Install the
bash-completion
package withbrew
:brew install bash-completion
then source the main bash completion script in your
~/.bash_profile
:source /usr/local/etc/profile.d/bash_completion.sh
and finally copy
west-completion.bash
to/usr/local/etc/bash_completion.d/
.