2015-10-15 12:05:45 +08:00
|
|
|
.. _apps_dev_process:
|
|
|
|
|
|
|
|
Application Development Workflow
|
|
|
|
################################
|
|
|
|
|
2015-10-21 01:28:33 +08:00
|
|
|
The application development workflow identifies procedures needed to create, build, and
|
|
|
|
run a Zephyr microkernel or nanokernel application.
|
2015-10-15 12:05:45 +08:00
|
|
|
|
|
|
|
Before you build
|
|
|
|
----------------
|
|
|
|
|
2015-10-20 02:15:41 +08:00
|
|
|
* Check that your Linux host meets the minimum requirements specified in the
|
2016-01-29 00:59:49 +08:00
|
|
|
:ref:`getting_started`.
|
2015-10-15 12:05:45 +08:00
|
|
|
|
|
|
|
* Check that environment variables have been configured correctly as outlined
|
|
|
|
in :ref:`apps_common_procedures`.
|
|
|
|
|
|
|
|
Workflow
|
|
|
|
--------
|
|
|
|
|
2015-10-20 02:15:41 +08:00
|
|
|
1. Create a directory structure for your Zephyr application.
|
2015-10-15 12:05:45 +08:00
|
|
|
|
2015-10-20 02:15:41 +08:00
|
|
|
a) :ref:`create_directory_structure`
|
2015-10-15 12:05:45 +08:00
|
|
|
|
2015-10-20 02:15:41 +08:00
|
|
|
2. Add a Makefile
|
2015-10-15 12:05:45 +08:00
|
|
|
|
2015-10-20 02:15:41 +08:00
|
|
|
b) :ref:`create_src_makefile`
|
2015-10-15 12:05:45 +08:00
|
|
|
|
2015-10-20 02:15:41 +08:00
|
|
|
3. Define the application's default kernel configuration using
|
2015-10-24 00:42:56 +08:00
|
|
|
:ref:`define_default_kernel_conf`.
|
2015-10-15 12:05:45 +08:00
|
|
|
|
2015-10-20 02:15:41 +08:00
|
|
|
4. Define kernel configuration override options for the application
|
2015-10-24 00:42:56 +08:00
|
|
|
using :ref:`override_kernel_conf`.
|
2015-10-15 12:05:45 +08:00
|
|
|
|
2015-10-20 02:15:41 +08:00
|
|
|
5. For a microkernel application, define objects as you develop code
|
2015-10-24 00:42:56 +08:00
|
|
|
using :ref:`create_mdef`.
|
2015-10-15 12:05:45 +08:00
|
|
|
|
2015-10-20 02:15:41 +08:00
|
|
|
6. For all applications, define nanokernel objects as you need them in
|
2015-10-15 12:05:45 +08:00
|
|
|
code.
|
|
|
|
|
2015-10-20 02:15:41 +08:00
|
|
|
7. Develop source code and add source code files to the src directory.
|
2015-10-15 12:05:45 +08:00
|
|
|
|
2015-10-24 00:42:56 +08:00
|
|
|
* :ref:`naming_conventions`
|
|
|
|
* :ref:`src_makefiles_reqs`
|
|
|
|
* :ref:`src_files_directories`
|
2015-10-15 12:05:45 +08:00
|
|
|
|
2015-10-20 02:15:41 +08:00
|
|
|
8. Build an application image.
|
2015-10-15 12:05:45 +08:00
|
|
|
|
2015-10-24 00:42:56 +08:00
|
|
|
* :ref:`apps_build`
|
|
|
|
|
2015-10-15 12:05:45 +08:00
|
|
|
|
2015-10-20 02:15:41 +08:00
|
|
|
9. To test the application image's functionality on simulated hardware
|
2015-10-24 00:42:56 +08:00
|
|
|
with QEMU, see :ref:`apps_run`.
|
2015-10-15 12:05:45 +08:00
|
|
|
|
2015-10-20 02:15:41 +08:00
|
|
|
10. To load an application image on a target hardware, see using
|
2015-12-18 08:12:33 +08:00
|
|
|
:ref:`board` documentation.
|