doc: west: add FAQ for missing extension command

"why can't I run west build" is a common enough question to add an FAQ
item for it in the troubleshooting page.

Even if people don't read it, we can still link to it on Slack etc.
when the question gets asked.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
This commit is contained in:
Martí Bolívar 2020-03-31 11:07:32 -07:00 committed by Carles Cufí
commit 1c39ed8129

View file

@ -5,6 +5,58 @@ Troubleshooting West
This page covers common issues with west and how to solve them.
"invalid choice: 'build'" (or 'flash', etc.)
********************************************
If you see an unexpected error like this when trying to run a Zephyr extension
command (like :ref:`west flash <west-flashing>`, :ref:`west build
<west-building>`, etc.):
.. code-block:: none
$ west build [...]
west: error: argument <command>: invalid choice: 'build' (choose from 'init', [...])
$ west flash [...]
west: error: argument <command>: invalid choice: 'flash' (choose from 'init', [...])
The most likely cause is that you're running the command outside of a
:ref:`west workspace <west-workspace>`. West needs to know where your workspace
is to find :ref:`west-extensions`.
To fix this, you have two choices:
#. Run the command from inside a workspace (e.g. the :file:`zephyrproject`
directory you created when you :ref:`got started <getting_started>`).
For example, create your build directory inside the workspace, or run ``west
flash --build-dir YOUR_BUILD_DIR`` from inside the workspace.
#. Set the :envvar:`ZEPHYR_BASE` :ref:`environment variable <env_vars>` and re-run
the west extension command. If set, west will use :envvar:`ZEPHYR_BASE` to
find your workspace.
If you're unsure whether a command is built-in or an extension, run ``west
help`` from inside your workspace. The output prints extension commands
separately, and looks like this for mainline Zephyr:
.. code-block:: none
$ west help
built-in commands for managing git repositories:
init: create a west workspace
[...]
other built-in commands:
help: get help for west or a command
[...]
extension commands from project manifest (path: zephyr):
build: compile a Zephyr application
flash: flash and run a binary on a board
[...]
"invalid choice: 'post-init'"
*****************************