Boot Linux faster!

Check our new training course

Boot Linux faster!

Check our new training course
and Creative Commons CC-BY-SA
lecture and lab materials

Bootlin logo

Elixir Cross Referencer

.. _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.

   * :ref:`naming_conventions`
   * :ref:`src_makefiles_reqs`
   * :ref:`src_files_directories`

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.