mirror of
https://github.com/espressif/esp-idf.git
synced 2025-09-30 19:19:21 +00:00
Build & config: Remove the "make" build system
The "make" build system was deprecated in v4.0 in favor of idf.py (cmake). The remaining support is removed in v5.0.
This commit is contained in:
@@ -11,7 +11,7 @@ The image contains:
|
||||
- Common utilities such as git, wget, curl, zip.
|
||||
- Python 3.6 or newer.
|
||||
- A copy of a specific version of ESP-IDF (see below for information about versions). ``IDF_PATH`` environment variable is set, and points to ESP-IDF location in the container.
|
||||
- All the build tools required for the specific version of ESP-IDF: CMake, make, ninja, cross-compiler toolchains, etc.
|
||||
- All the build tools required for the specific version of ESP-IDF: CMake, ninja, cross-compiler toolchains, etc.
|
||||
- All Python packages required by ESP-IDF are installed in a virtual environment.
|
||||
|
||||
The image entrypoint sets up ``PATH`` environment variable to point to the correct version of tools, and activates the Python virtual environment. As a result, the environment is ready to use the ESP-IDF build system.
|
||||
@@ -63,27 +63,6 @@ To build with a specific docker image tag, specify it as ``espressif/idf:TAG``,
|
||||
|
||||
You can check the up-to-date list of available tags at https://hub.docker.com/r/espressif/idf/tags.
|
||||
|
||||
|
||||
Building a project with GNU Make
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Same as for CMake, except that the build command is different::
|
||||
|
||||
docker run --rm -v $PWD:/project -w /project espressif/idf make defconfig all -j4
|
||||
|
||||
|
||||
.. note::
|
||||
|
||||
If the ``sdkconfig`` file does not exist, the default behavior of GNU Make build system is to open the menuconfig UI. This may be not desired in automated build environments. To ensure that the ``sdkconfig`` file exists, ``defconfig`` target is added before ``all``.
|
||||
|
||||
If you intend to build the same project repeatedly, you may bind the ``tools/kconfig`` directory of ESP-IDF to a named volume. This will prevent Kconfig tools, located in ESP-IDF directory, from being rebuilt, causing a rebuild of the rest of the project::
|
||||
|
||||
docker run --rm -v $PWD:/project -v kconfig:/opt/esp/idf/tools/kconfig -w /project espressif/idf make defconfig all -j4
|
||||
|
||||
If you need clean up the ``kconfig`` volume, run ``docker volume rm kconfig``.
|
||||
|
||||
Binding the ``tools/kconfig`` directory to a volume is not necessary when using the CMake build system.
|
||||
|
||||
Using the image interactively
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
|
@@ -6,10 +6,7 @@ IDF Monitor
|
||||
|
||||
The IDF monitor tool is mainly a serial terminal program which relays serial data to and from the target device's serial port. It also provides some IDF-specific features.
|
||||
|
||||
This tool can be launched from an IDF project by running ``idf.py monitor``.
|
||||
|
||||
For the legacy GNU Make system, run ``make monitor``.
|
||||
|
||||
This tool can be launched from an IDF project by running ``idf.py monitor``.
|
||||
|
||||
Keyboard Shortcuts
|
||||
==================
|
||||
@@ -271,10 +268,10 @@ Issues Observed on Windows
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
- Arrow keys, as well as some other keys, do not work in GDB due to Windows Console limitations.
|
||||
- Occasionally, when "idf.py" or "make" exits, it might stall for up to 30 seconds before IDF Monitor resumes.
|
||||
- Occasionally, when "idf.py" exits, it might stall for up to 30 seconds before IDF Monitor resumes.
|
||||
- When "gdb" is run, it might stall for a short time before it begins communicating with the GDBStub.
|
||||
|
||||
.. _addr2line: https://sourceware.org/binutils/docs/binutils/addr2line.html
|
||||
.. _gdb: https://sourceware.org/gdb/download/onlinedocs/
|
||||
.. _pySerial: https://github.com/pyserial/pyserial
|
||||
.. _miniterm: https://pyserial.readthedocs.org/en/latest/tools.html#module-serial.tools.miniterm
|
||||
.. _miniterm: https://pyserial.readthedocs.org/en/latest/tools.html#module-serial.tools.miniterm
|
||||
|
Reference in New Issue
Block a user