You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/en/api-guides/build-system.rst
+13-15Lines changed: 13 additions & 15 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -25,19 +25,19 @@ ESP-IDF makes these components explicit and configurable. To do that, when a pro
25
25
Concepts
26
26
--------
27
27
28
-
- A "project" is a directory that contains all the files and configuration to build a single "app" (executable), as well as additional supporting elements such as a partition table, data/filesystem partitions, and a bootloader.
28
+
- A ``project`` is a directory that contains all the files and configuration to build a single ``app`` (executable), as well as additional supporting elements such as a partition table, data partitions or filesystem partitions, and a bootloader.
29
29
30
-
- "Project configuration" is held in a single file called ``sdkconfig`` in the root directory of the project. This configuration file is modified via ``idf.py menuconfig`` to customize the configuration of the project. A single project contains exactly one project configuration.
30
+
- ``Project configuration`` is held in a single file called ``sdkconfig`` in the root directory of the project. This configuration file is modified via ``idf.py menuconfig`` to customize the configuration of the project. A single project contains exactly one project configuration.
31
31
32
-
- An "app" is an executable that is built by ESP-IDF. A single project will usually build two apps - a "project app" (the main executable, ie your custom firmware) and a "bootloader app" (the initial bootloader program which launches the project app).
32
+
- An ``app`` is an executable that is built by ESP-IDF. A single project will usually build two apps - a "project app" (the main executable, ie your custom firmware) and a "bootloader app" (the initial bootloader program which launches the project app).
33
33
34
-
- "components" are modular pieces of standalone code that are compiled into static libraries (.a files) and linked to an app. Some are provided by ESP-IDF itself, others may be sourced from other places.
34
+
- ``Components`` are modular pieces of standalone code that are compiled into static libraries (.a files) and linked to an app. Some are provided by ESP-IDF itself, others may be sourced from other places.
35
35
36
-
- "Target" is the hardware for which an application is built. A full list of supported targets in your version of ESP-IDF can be seen by running `idf.py --list-targets`.
36
+
- ``Target`` is the hardware for which an application is built. A full list of supported targets in your version of ESP-IDF can be seen by running `idf.py --list-targets`.
37
37
38
38
Some things are not part of the project:
39
39
40
-
- "ESP-IDF" is not part of the project. Instead, it is standalone, and linked to the project via the ``IDF_PATH`` environment variable which holds the path of the ``esp-idf`` directory. This allows the ESP-IDF framework to be decoupled from your project.
40
+
- ``ESP-IDF`` is not part of the project. Instead, it is standalone, and linked to the project via the ``IDF_PATH`` environment variable which holds the path of the ``esp-idf`` directory. This allows the ESP-IDF framework to be decoupled from your project.
41
41
42
42
- The toolchain for compilation is not part of the project. The toolchain should be installed in the system command line PATH.
43
43
@@ -47,22 +47,22 @@ Using the Build System
47
47
48
48
.. _idf.py:
49
49
50
-
``idf.py``
51
-
----------
50
+
idf.py
51
+
------
52
52
53
53
The ``idf.py`` command-line tool provides a front-end for easily managing your project builds. It manages the following tools:
54
54
55
55
- CMake_, which configures the project to be built
56
56
- Ninja_ which builds the project
57
57
- `esptool.py`_ for flashing the target.
58
58
59
-
You can read more about configuring the build system using ``idf.py``:doc:`here<tools/idf-py>`.
59
+
For more details about configuring the build system using ``idf.py``, please refer to :doc:`IDF Frontend<tools/idf-py>`.
60
60
61
61
62
62
Using CMake Directly
63
63
--------------------
64
64
65
-
:ref:`idf.py` is a wrapper around CMake_ for convenience. However, you can also invoke CMake directly if you prefer.
65
+
:ref:`idf.py` is a wrapper around CMake_ for convenience. However, you can also invoke CMake directly.
66
66
67
67
.. highlight:: bash
68
68
@@ -125,7 +125,6 @@ When adding custom non-build steps like "flash" to the IDE, it is recommended to
125
125
126
126
For more detailed information about integrating ESP-IDF with CMake into an IDE, see `Build System Metadata`_.
127
127
128
-
129
128
.. _setting-python-interpreter:
130
129
131
130
Setting up the Python Interpreter
@@ -615,15 +614,14 @@ Including Components in the Build
615
614
616
615
- Components mentioned explicitly in ``COMPONENTS``.
617
616
- Those components' requirements (evaluated recursively).
618
-
- The "common" components that every component depends on.
617
+
- The :ref:`common components<component-common-requirements>` that every component depends on.
619
618
620
619
- Setting ``COMPONENTS`` to the minimal list of required components can significantly reduce compile times.
621
-
- The ``MINIMAL_BUILD`` :ref:`build property <cmake-build-properties>` can be set to ``ON``, which acts as a shortcut to configure the ``COMPONENTS`` variable to include only the ``main`` component. If the ``COMPONENTS`` variable is defined while the ``MINIMAL_BUILD`` property is enabled, ``COMPONENTS`` will take precedence.
620
+
- The ``MINIMAL_BUILD`` :ref:`build property <cmake-build-properties>` can be set to ``ON``, which acts as a shortcut to configure the ``COMPONENTS`` variable to include only the ``main`` component. This means that the build will include only the :ref:`common components <component-common-requirements>`, the ``main`` component, and all dependencies associated with it, both direct and indirect. If the ``COMPONENTS`` variable is defined while the ``MINIMAL_BUILD`` property is enabled, ``COMPONENTS`` will take precedence.
622
621
623
622
.. note::
624
623
625
-
When using the ``COMPONENTS`` variable or the ``MINIMAL_BUILD`` build property to specify components, certain features and configurations, such as those provided by esp_psram or espcoredump components, may not be included by default. To include these features, you must add the relevant components to the ``COMPONENTS`` variable or list them in the ``REQUIRES`` or ``PRIV_REQUIRES`` argument during component registration.
626
-
624
+
Certain features and configurations, such as those provided by esp_psram or espcoredump components, may not be available to your project by default if the minimal list of components is used. When using the ``COMPONENTS`` variable, ensure that all necessary components are included. Similarly, when using the ``MINIMAL_BUILD`` build property, ensure that all required components are specified in the ``REQUIRES`` or ``PRIV_REQUIRES`` argument during component registration.
Copy file name to clipboardExpand all lines: docs/en/api-guides/core_dump.rst
+2-1Lines changed: 2 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -17,7 +17,8 @@ Configurations
17
17
--------------
18
18
19
19
.. note::
20
-
The ``Core dump`` configuration options are available only if the ``espcoredump`` component is included in the build.
20
+
21
+
The ``Core dump`` configuration options are available only if the ``espcoredump`` component is included in the build. To include ``Core dump`` into your project, add the ``espcoredump`` component as a dependency in either ``REQUIRES`` or ``PRIV_REQUIRES`` when registering your component with ``idf_component_register``.
Copy file name to clipboardExpand all lines: docs/en/api-guides/external-ram.rst
+2-1Lines changed: 2 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -47,7 +47,8 @@ Configuring External RAM
47
47
========================
48
48
49
49
.. note::
50
-
The ``SPI RAM`` configuration options are available only if the ``esp_psram`` component is included in the build.
50
+
51
+
The ``SPI RAM`` configuration options are available only if the ``esp_psram`` component is included in the build. To include ``SPI RAM`` into your project, add the ``esp_psram`` component as a dependency in either ``REQUIRES`` or ``PRIV_REQUIRES`` when registering your component with ``idf_component_register``.
51
52
52
53
ESP-IDF fully supports the use of external RAM in applications. Once the external RAM is initialized at startup, ESP-IDF can be configured to integrate the external RAM in several ways:
0 commit comments