Difference between revisions of "West zephyr project manager"
From Wiki at Neela Nurseries
m |
m (→^ West and Zephyr "flash" extension: - add link to Zephyr flash and debug support documentation.) |
||
(5 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | + | Some important documentation starting points: | |
<ul> | <ul> | ||
<li> https://docs.zephyrproject.org/latest/guides/west/basics.html<br /> | <li> https://docs.zephyrproject.org/latest/guides/west/basics.html<br /> | ||
+ | <li> https://docs.zephyrproject.org/latest/guides/west/built-in.html#west-init<br /> | ||
<li> https://docs.zephyrproject.org/latest/guides/west/built-in.html#west-update<br /> | <li> https://docs.zephyrproject.org/latest/guides/west/built-in.html#west-update<br /> | ||
+ | Notes on `west` and creation and its use of <code>manifest-rev</code> local commits: | ||
+ | <li> https://docs.zephyrproject.org/latest/guides/west/workspaces.html#west-manifest-rev<br /> | ||
+ | </ul> | ||
+ | |||
+ | <!-- comment --> | ||
+ | |||
+ | == [[#top|^]] West and Zephyr "flash" extension == | ||
+ | |||
+ | Zephyr RTOS latest documentation as of 2024-02-22 has a section about [https://docs.zephyrproject.org/latest/hardware/porting/board_porting.html#flash-and-debug-support flash and debug support]. Part of Zephyr toolchain / toolset related to flashing target MCUs is sometimes referred to as "flash runner". | ||
+ | |||
+ | TODO: <i>Find example Zephyr flash runner. Find or craft a concise English definition of a flash runner, in Zephyr context, in larger context if sensible.</i> | ||
+ | |||
+ | To override a scripted or default firmware file to be flashed, `west` may be invoked in the following manner: | ||
+ | |||
+ | $ west flash --bin-file ./build/multicore.bin | ||
+ | |||
+ | To see more options for `west flash ...` in a Zephyr configured workspace, enter the command: | ||
+ | |||
+ | $ west flash -h | ||
+ | |||
+ | |||
+ | <!-- comment --> | ||
+ | |||
+ | == [[#top|^]] Errors And Solutions During `west` Builds == | ||
+ | |||
+ | <pre> | ||
+ | -- Application: /mnt/host-os-dev-area/projects/phase-1/aws-iot-stand-alone | ||
+ | -- Zephyr version: 2.6.0-rc1 (/mnt/host-os-dev-area/projects/phase-1/zephyr), build: v2.6.0-rc1-ncs1 | ||
+ | -- Found west (found suitable version "0.11.0", minimum required is "0.7.1") | ||
+ | -- Board: thingy91_nrf9160ns | ||
+ | -- Cache files will be written to: /home/guest/.cache/zephyr | ||
+ | -- Found dtc: /usr/bin/dtc (found suitable version "1.5.0", minimum required is "1.4.6") | ||
+ | -- Found toolchain: cross-compile (arm-unknown-linux-gnueabi-) | ||
+ | CMake Error at /mnt/host-os-dev-area/projects/phase-1/zephyr/cmake/compiler/gcc/generic.cmake:8 (message): | ||
+ | Zephyr was unable to find the toolchain. Is the environment misconfigured? | ||
+ | |||
+ | User-configuration: | ||
+ | |||
+ | ZEPHYR_TOOLCHAIN_VARIANT: cross-compile | ||
+ | |||
+ | Internal variables: | ||
+ | |||
+ | CROSS_COMPILE: arm-unknown-linux-gnueabi- | ||
+ | |||
+ | TOOLCHAIN_HOME: | ||
+ | |||
+ | Call Stack (most recent call first): | ||
+ | /mnt/host-os-dev-area/projects/phase-1/zephyr/cmake/generic_toolchain.cmake:42 (include) | ||
+ | /mnt/host-os-dev-area/projects/phase-1/zephyr/cmake/app/boilerplate.cmake:553 (include) | ||
+ | /mnt/host-os-dev-area/projects/phase-1/zephyr/share/zephyr-package/cmake/ZephyrConfig.cmake:24 (include) | ||
+ | /mnt/host-os-dev-area/projects/phase-1/zephyr/share/zephyr-package/cmake/ZephyrConfig.cmake:40 (include_boilerplate) | ||
+ | CMakeLists.txt:9 (find_package) | ||
+ | </pre> | ||
+ | |||
+ | |||
+ | -- Configuring incomplete, errors occurred! | ||
+ | |||
+ | |||
+ | <!-- comment --> | ||
+ | |||
+ | == [[#top|^]] Glossary of `west` Related Resources == | ||
+ | |||
+ | <ul> | ||
+ | <li> manifest repository<br /> | ||
+ | <ul> | ||
+ | <i> | ||
+ | "Every west workspace contains exactly one manifest repository, which is a Git repository containing a manifest file. The location of the manifest repository is given by the manifest.path configuration option in the local configuration file." | ||
+ | </i> | ||
+ | </ul> | ||
</ul> | </ul> | ||
+ | <!-- comment --> | ||
+ | == [[#top|^]] unnamed section == | ||
Excerpt from [https://docs.zephyrproject.org/latest/guides/west/manifest.html west documentation]: | Excerpt from [https://docs.zephyrproject.org/latest/guides/west/manifest.html west documentation]: |
Latest revision as of 18:53, 22 February 2024
Some important documentation starting points:
- https://docs.zephyrproject.org/latest/guides/west/basics.html
- https://docs.zephyrproject.org/latest/guides/west/built-in.html#west-init
- https://docs.zephyrproject.org/latest/guides/west/built-in.html#west-update
Notes on `west` and creation and its use ofmanifest-rev
local commits: - https://docs.zephyrproject.org/latest/guides/west/workspaces.html#west-manifest-rev
Contents
^ West and Zephyr "flash" extension
Zephyr RTOS latest documentation as of 2024-02-22 has a section about flash and debug support. Part of Zephyr toolchain / toolset related to flashing target MCUs is sometimes referred to as "flash runner".
TODO: Find example Zephyr flash runner. Find or craft a concise English definition of a flash runner, in Zephyr context, in larger context if sensible.
To override a scripted or default firmware file to be flashed, `west` may be invoked in the following manner:
$ west flash --bin-file ./build/multicore.bin
To see more options for `west flash ...` in a Zephyr configured workspace, enter the command:
$ west flash -h
^ Errors And Solutions During `west` Builds
-- Application: /mnt/host-os-dev-area/projects/phase-1/aws-iot-stand-alone -- Zephyr version: 2.6.0-rc1 (/mnt/host-os-dev-area/projects/phase-1/zephyr), build: v2.6.0-rc1-ncs1 -- Found west (found suitable version "0.11.0", minimum required is "0.7.1") -- Board: thingy91_nrf9160ns -- Cache files will be written to: /home/guest/.cache/zephyr -- Found dtc: /usr/bin/dtc (found suitable version "1.5.0", minimum required is "1.4.6") -- Found toolchain: cross-compile (arm-unknown-linux-gnueabi-) CMake Error at /mnt/host-os-dev-area/projects/phase-1/zephyr/cmake/compiler/gcc/generic.cmake:8 (message): Zephyr was unable to find the toolchain. Is the environment misconfigured? User-configuration: ZEPHYR_TOOLCHAIN_VARIANT: cross-compile Internal variables: CROSS_COMPILE: arm-unknown-linux-gnueabi- TOOLCHAIN_HOME: Call Stack (most recent call first): /mnt/host-os-dev-area/projects/phase-1/zephyr/cmake/generic_toolchain.cmake:42 (include) /mnt/host-os-dev-area/projects/phase-1/zephyr/cmake/app/boilerplate.cmake:553 (include) /mnt/host-os-dev-area/projects/phase-1/zephyr/share/zephyr-package/cmake/ZephyrConfig.cmake:24 (include) /mnt/host-os-dev-area/projects/phase-1/zephyr/share/zephyr-package/cmake/ZephyrConfig.cmake:40 (include_boilerplate) CMakeLists.txt:9 (find_package)
-- Configuring incomplete, errors occurred!
^ Glossary of `west` Related Resources
- manifest repository
-
"Every west workspace contains exactly one manifest repository, which is a Git repository containing a manifest file. The location of the manifest repository is given by the manifest.path configuration option in the local configuration file."
^ unnamed section
Excerpt from west documentation:
The available self keys and their usage are in the following table. self keys Key Description path Optional. The path west init should clone the manifest repository into, relative to the west workspace topdir. If not given, the basename of the path component in the manifest repository URL will be used by default. For example, if the URL is https://git.example.com/project-repo, the manifest repository would be cloned to the directory project-repo. west-commands Optional. This is analogous to the same key in a project sequence element. import Optional. This is also analogous to the projects key, but allows importing projects from other files in the manifest repository. See Manifest Imports.