blob: 20fca0c530899899bde57fe0224c730d3850c2c2 [file] [log] [blame]
.. _apps_dev_process:
Application Development Workflow
################################
The application development workflow identifies procedures needed to create, build, and
run a Zephyr microkernel or nanokernel application.
Before you build
----------------
* Check that your Linux host meets the minimum requirements specified in the
:ref:`getting_started`.
* Check that environment variables have been configured correctly as outlined
in :ref:`apps_common_procedures`.
Workflow
--------
1. Create a directory structure for your Zephyr application.
a) :ref:`create_directory_structure`
2. Add a Makefile
b) :ref:`create_src_makefile`
3. Define the application's default kernel configuration using
:ref:`define_default_kernel_conf`.
4. Define kernel configuration override options for the application
using :ref:`override_kernel_conf`.
5. For a microkernel application, define objects as you develop code
using :ref:`create_mdef`.
6. For all applications, define nanokernel objects as you need them in
code.
7. Develop source code and add source code files to the src directory.
* `naming conventions`_
* :ref:`src_makefiles_reqs`
* :ref:`src_files_directories`
.. _naming conventions: https://wiki.zephyrproject.org/view/Coding_conventio ns#Naming_Conventions
8. Build an application image.
* :ref:`apps_build`
9. To test the application image's functionality on simulated hardware
with QEMU, see :ref:`apps_run`.
10. To load an application image on a target hardware, see using
:ref:`board` documentation.