Not able to Build the firmware.
• Hardware description: ESP32-S3 (Xtensa architecture), MacBook M4
• RTOS: FreeRTOS (from ESP-IDF)
• Installation type: micro_ros_setup via ESP-IDF component (micro_ros_espidf_component) jazzy branch
• Version or commit hash: ESP-IDF v5.5.1, micro-ROS Jazzy
Steps to reproduce the issue
- Set up ESP-IDF v5.5.1 (. $IDF_PATH/export.sh)
-
`pip3 install catkin_pkg lark-parser colcon-common-extensions` - Create a new micro-ROS app using the ESP-IDF template
- Run the following build command inside the project directory:
idf.py set-target esp32s3idf.py build - Observe build process failing during colcon build in the ament_cmake_core stage
Expected behavior
The micro-ROS client library should build successfully within the ESP-IDF build system, completing the colcon build process for the micro_ros_dev folder without dependency errors.
Actual behavior
Build Fails with:
ModuleNotFoundError: No module named 'catkin_pkg' CMake Error at cmake/core/ament_package_xml.cmake:95 (message): execute_process(...) returned error code 1
Additional information
Speculation: have you done source ~/esp/v5.2.5/esp-idf/export.sh before running pip3 install catkin_pkg lark-parser colcon-common-extensions?
If not, those dependencies end up in site-packages for your workstation, not for your ESP-IDF installation which has its own python interpreter. In my case, I have a .espressif/python_env/idf5.2_py3.12_env/bin/python3 interpreter and it uses packages installed in .espressif/python_env/idf5.2_py3.12_env/lib/python3.12/site-packages.
After running export.sh, your python3 command will be the one in ~/.espressif/python_env/idf5.2_py3.12_env/bin/python3
I do source the IDF environment before installing the packages.
Speculation: This might be because I'm trying to build this on my Mac, which does not have ROS2 installed.