Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Build error when enabling "OPENTHREAD_BR_AUTO_START" option (TZ-207) #26

Closed
DrewOJensen opened this issue Jul 28, 2023 · 4 comments
Closed

Comments

@DrewOJensen
Copy link

DrewOJensen commented Jul 28, 2023

I'm new to all of this so please forgive my ignorance.

When I perform a clean install of esp-idf (v5.1) & esp-thread-br (latest), both contained in the same folder parent folder, I am able to build with the the default config setup. Here's "ESP Thread Border Router Example" config menu option
Screenshot 2023-07-27 at 10 05 18 PM

Again, everything is default, no changes to the install yet. I then added the SSID & PSWD for the Wifi, and rebuilt no problem. I then enabled "OPENTHREAD_BR_AUTO_START" and when I attempt to build, I run into issues.
Screenshot 2023-07-27 at 10 41 59 PM

Face value says it's an implicit declaration issue but not knowing any details of this setup, I wouldn't be surprised if it's something I'm possibly missing in the setup. As I mentioned earlier, I've already set the SSID & PSWD, and tested it previously on the first default build manually setting up wifi, meaning I know the SSID and PSWD work. Here is the output during the failing build, starting with the 1196 build steps.

[1172/1196] Building C object esp-idf/thread_border_router/CMakeFiles/__idf_thread_border_router.dir/src/border_router_launch.c.objFAILED: esp-idf/thread_border_router/CMakeFiles/__idf_thread_border_router.dir/src/border_router_launch.c.obj /home/crazyharry/.espressif/tools/xtensa-esp32s3-elf/esp-12.2.0_20230208/xtensa-esp32s3-elf/bin/xtensa-esp32s3-elf-gcc -DESP_PLATFORM -DIDF_VER=\"v5.1-dirty\" -DMD5_ENABLED=1 -DOPENTHREAD_CONFIG_FILE=\"openthread-core-esp32x-ftd-config.h\" -DOPENTHREAD_FTD=1 -DSERIAL_FLASHER_BOOT_HOLD_TIME_MS=50 -DSERIAL_FLASHER_RESET_HOLD_TIME_MS=100 -DSOC_MMU_PAGE_SIZE=CONFIG_MMU_PAGE_SIZE -D_GNU_SOURCE -D_POSIX_READER_WRITER_LOCKS -I/home/crazyharry/esp/esp-thread-br/examples/basic_thread_border_router/build/config -I/home/crazyharry/esp/esp-thread-br/examples/common/thread_border_router/include -I/home/crazyharry/esp/esp-idf/components/newlib/platform_include -I/home/crazyharry/esp/esp-idf/components/freertos/FreeRTOS-Kernel/include -I/home/crazyharry/esp/esp-idf/components/freertos/FreeRTOS-Kernel/portable/xtensa/include -I/home/crazyharry/esp/esp-idf/components/freertos/esp_additions/include/freertos -I/home/crazyharry/esp/esp-idf/components/freertos/esp_additions/include -I/home/crazyharry/esp/esp-idf/components/freertos/esp_additions/arch/xtensa/include -I/home/crazyharry/esp/esp-idf/components/esp_hw_support/include -I/home/crazyharry/esp/esp-idf/components/esp_hw_support/include/soc -I/home/crazyharry/esp/esp-idf/components/esp_hw_support/include/soc/esp32s3 -I/home/crazyharry/esp/esp-idf/components/esp_hw_support/port/esp32s3/. -I/home/crazyharry/esp/esp-idf/components/esp_hw_support/port/esp32s3/private_include -I/home/crazyharry/esp/esp-idf/components/heap/include -I/home/crazyharry/esp/esp-idf/components/log/include -I/home/crazyharry/esp/esp-idf/components/soc/include -I/home/crazyharry/esp/esp-idf/components/soc/esp32s3 -I/home/crazyharry/esp/esp-idf/components/soc/esp32s3/include -I/home/crazyharry/esp/esp-idf/components/hal/esp32s3/include -I/home/crazyharry/esp/esp-idf/components/hal/include -I/home/crazyharry/esp/esp-idf/components/hal/platform_port/include -I/home/crazyharry/esp/esp-idf/components/esp_rom/include -I/home/crazyharry/esp/esp-idf/components/esp_rom/include/esp32s3 -I/home/crazyharry/esp/esp-idf/components/esp_rom/esp32s3 -I/home/crazyharry/esp/esp-idf/components/esp_common/include -I/home/crazyharry/esp/esp-idf/components/esp_system/include -I/home/crazyharry/esp/esp-idf/components/esp_system/port/soc -I/home/crazyharry/esp/esp-idf/components/esp_system/port/include/private -I/home/crazyharry/esp/esp-idf/components/xtensa/include -I/home/crazyharry/esp/esp-idf/components/xtensa/esp32s3/include -I/home/crazyharry/esp/esp-idf/components/lwip/include -I/home/crazyharry/esp/esp-idf/components/lwip/include/apps -I/home/crazyharry/esp/esp-idf/components/lwip/include/apps/sntp -I/home/crazyharry/esp/esp-idf/components/lwip/lwip/src/include -I/home/crazyharry/esp/esp-idf/components/lwip/port/include -I/home/crazyharry/esp/esp-idf/components/lwip/port/freertos/include -I/home/crazyharry/esp/esp-idf/components/lwip/port/esp32xx/include -I/home/crazyharry/esp/esp-idf/components/lwip/port/esp32xx/include/arch -I/home/crazyharry/esp/esp-thread-br/examples/basic_thread_border_router/managed_components/espressif__esp_ot_cli_extension/include -I/home/crazyharry/esp/esp-idf/components/openthread/include -I/home/crazyharry/esp/esp-idf/components/openthread/openthread/include -I/home/crazyharry/esp/esp-idf/components/esp_netif/include -I/home/crazyharry/esp/esp-idf/components/esp_event/include -I/home/crazyharry/esp/esp-idf/components/driver/include -I/home/crazyharry/esp/esp-idf/components/driver/deprecated -I/home/crazyharry/esp/esp-idf/components/driver/analog_comparator/include -I/home/crazyharry/esp/esp-idf/components/driver/dac/include -I/home/crazyharry/esp/esp-idf/components/driver/gpio/include -I/home/crazyharry/esp/esp-idf/components/driver/gptimer/include -I/home/crazyharry/esp/esp-idf/components/driver/i2c/include -I/home/crazyharry/esp/esp-idf/components/driver/i2s/include -I/home/crazyharry/esp/esp-idf/components/driver/ledc/include -I/home/crazyharry/esp/esp-idf/components/driver/mcpwm/include -I/home/crazyharry/esp/esp-idf/components/driver/parlio/include -I/home/crazyharry/esp/esp-idf/components/driver/pcnt/include -I/home/crazyharry/esp/esp-idf/components/driver/rmt/include -I/home/crazyharry/esp/esp-idf/components/driver/sdio_slave/include -I/home/crazyharry/esp/esp-idf/components/driver/sdmmc/include -I/home/crazyharry/esp/esp-idf/components/driver/sigma_delta/include -I/home/crazyharry/esp/esp-idf/components/driver/spi/include -I/home/crazyharry/esp/esp-idf/components/driver/temperature_sensor/include -I/home/crazyharry/esp/esp-idf/components/driver/touch_sensor/include -I/home/crazyharry/esp/esp-idf/components/driver/twai/include -I/home/crazyharry/esp/esp-idf/components/driver/uart/include -I/home/crazyharry/esp/esp-idf/components/driver/usb_serial_jtag/include -I/home/crazyharry/esp/esp-idf/components/driver/touch_sensor/esp32s3/include -I/home/crazyharry/esp/esp-idf/components/esp_pm/include -I/home/crazyharry/esp/esp-idf/components/esp_ringbuf/include -I/home/crazyharry/esp/esp-idf/examples/common_components/iperf/include -I/home/crazyharry/esp/esp-idf/components/esp_wifi/include -I/home/crazyharry/esp/esp-idf/components/esp_wifi/wifi_apps/include -I/home/crazyharry/esp/esp-idf/components/esp_phy/include -I/home/crazyharry/esp/esp-idf/components/esp_phy/esp32s3/include -I/home/crazyharry/esp/esp-idf/components/http_parser -I/home/crazyharry/esp/esp-idf/components/esp_http_client/include -I/home/crazyharry/esp/esp-thread-br/components/esp_br_http_ota/include -I/home/crazyharry/esp/esp-idf/components/app_update/include -I/home/crazyharry/esp/esp-idf/components/bootloader_support/include -I/home/crazyharry/esp/esp-idf/components/bootloader_support/bootloader_flash/include -I/home/crazyharry/esp/esp-idf/components/esp_app_format/include -I/home/crazyharry/esp/esp-idf/components/esp_partition/include -I/home/crazyharry/esp/esp-thread-br/examples/basic_thread_border_router/managed_components/espressif__esp_rcp_update/include -I/home/crazyharry/esp/esp-thread-br/examples/basic_thread_border_router/managed_components/espressif__esp-serial-flasher/include -I/home/crazyharry/esp/esp-thread-br/examples/basic_thread_border_router/managed_components/espressif__esp-serial-flasher/port -I/home/crazyharry/esp/esp-idf/components/nvs_flash/include -I/home/crazyharry/esp/esp-idf/components/spi_flash/include -I/home/crazyharry/esp/esp-idf/components/vfs/include -I/home/crazyharry/esp/esp-thread-br/examples/common/border_router_board/include -mlongcalls -ffunction-sections -fdata-sections -Wall -Werror=all -Wno-error=unused-function -Wno-error=unused-variable -Wno-error=unused-but-set-variable -Wno-error=deprecated-declarations -Wextra -Wno-unused-parameter -Wno-sign-compare -Wno-enum-conversion -gdwarf-4 -ggdb -Og -fmacro-prefix-map=/home/crazyharry/esp/esp-thread-br/examples/basic_thread_border_router=. -fmacro-prefix-map=/home/crazyharry/esp/esp-idf=/IDF -fstrict-volatile-bitfields -fno-jump-tables -fno-tree-switch-conversion -DconfigENABLE_FREERTOS_DEBUG_OCDAWARE=1 -std=gnu17 -Wno-old-style-declaration -MD -MT esp-idf/thread_border_router/CMakeFiles/__idf_thread_border_router.dir/src/border_router_launch.c.obj -MF esp-idf/thread_border_router/CMakeFiles/__idf_thread_border_router.dir/src/border_router_launch.c.obj.d -o esp-idf/thread_border_router/CMakeFiles/__idf_thread_border_router.dir/src/border_router_launch.c.obj -c /home/crazyharry/esp/esp-thread-br/examples/common/thread_border_router/src/border_router_launch.c In file included from /home/crazyharry/esp/esp-idf/components/openthread/include/esp_openthread.h:9, from /home/crazyharry/esp/esp-thread-br/examples/common/thread_border_router/include/border_router_launch.h:14, from /home/crazyharry/esp/esp-thread-br/examples/common/thread_border_router/src/border_router_launch.c:8: /home/crazyharry/esp/esp-thread-br/examples/common/thread_border_router/src/border_router_launch.c: In function 'ot_task_worker': /home/crazyharry/esp/esp-thread-br/examples/common/thread_border_router/src/border_router_launch.c:113:21: error: implicit declaration of function 'esp_openthread_auto_start'; did you mean 'esp_openthread_get_netif'? [-Werror=implicit-function-declaration] 113 | ESP_ERROR_CHECK(esp_openthread_auto_start((error == OT_ERROR_NONE) ? &dataset : NULL)); | ^~~~~~~~~~~~~~~~~~~~~~~~~ /home/crazyharry/esp/esp-idf/components/esp_common/include/esp_err.h:117:30: note: in definition of macro 'ESP_ERROR_CHECK' 117 | esp_err_t err_rc_ = (x); \ | ^ cc1: some warnings being treated as errors [1177/1196] Building C object esp-idf/espressif__mdns/CMakeFiles/__idf_espressif__mdns.dir/mdns.c.objninja: build stopped: subcommand failed. ninja failed with exit code 1, output of the command is in the /home/crazyharry/esp/esp-thread-br/examples/basic_thread_border_router/build/log/idf_py_stderr_output_91684 and /home/crazyharry/esp/esp-thread-br/examples/basic_thread_border_router/build/log/idf_py_stdout_output_91684

I also get an error when I try to build with the web server GUI enabled,
Screenshot 2023-07-27 at 10 56 54 PM
but first things first, I'd like to resolve this auto start issue first.

@github-actions github-actions bot changed the title Build error when enabling "OPENTHREAD_BR_AUTO_START" option Build error when enabling "OPENTHREAD_BR_AUTO_START" option (TZ-207) Jul 28, 2023
@gytxxsy
Copy link
Contributor

gytxxsy commented Jul 28, 2023

It seems that function "esp_openthread_auto_start" was not found when building the app. You can delete the folder "basic_thread_border_router/build" and try again. If the problem still cannot be resolved, it's a good idea to check if you use the latest commit.

Referenc commits:
esp-idf(release/v5.1): 79b1379662b547f6eb0e5fed33df70587b03d99c
esp-thread-br(latest): 7fd29e7

@DrewOJensen
Copy link
Author

Thanks for the advice to delete the build. That didn't work so I deleted both the IDF and thread folder and redownloaded the latest which got it working for the auto start. I am however still dealing with failing when enabling the web server option as I mentioned at the end of my previous post. This time I'm getting undefined references. Any ideas?

-- Build files have been written to: /home/crazyharry/esp/esp-thread-br/examples/basic_thread_border_router/build/bootloader [110/111] Generating binary image from built executable esptool.py v4.6.2 Creating esp32s3 image... Merged 2 ELF sections Successfully created esp32s3 image. Generated /home/crazyharry/esp/esp-thread-br/examples/basic_thread_border_router/build/bootloader/bootloader.bin [111/111] cd /home/crazyharry/esp/esp-thread-br/examples/basic_thread_bord...ead-br/examples/basic_thread_border_router/build/bootloader/bootloader.bi Bootloader binary size 0x51d0 bytes. 0x2e30 bytes (36%) free. [1258/1261] Linking CXX executable esp_ot_br.elf FAILED: esp_ot_br.elf : && /home/crazyharry/.espressif/tools/xtensa-esp32s3-elf/esp-12.2.0_20230208/xtensa-esp32s3-elf/bin/xtensa-esp32s3-elf-g++ -mlongcalls -Wl,--cref -Wl,--defsym=IDF_TARGET_ESP32S3=0 -Wl,--Map=/home/crazyharry/esp/esp-thread-br/examples/basic_thread_border_router/build/esp_ot_br.map -Wl,--no-warn-rwx-segments -fno-rtti -fno-lto -Wl,--gc-sections -Wl,--warn-common -T esp32s3.peripherals.ld -T esp32s3.rom.ld -T esp32s3.rom.api.ld -T esp32s3.rom.libgcc.ld -T esp32s3.rom.newlib.ld -T esp32s3.rom.version.ld -T memory.ld -T sections.ld CMakeFiles/esp_ot_br.elf.dir/project_elf_src_esp32s3.c.obj -o esp_ot_br.elf -L/home/crazyharry/esp/esp-idf/components/soc/esp32s3/ld -L/home/crazyharry/esp/esp-idf/components/esp_rom/esp32s3/ld -L/home/crazyharry/esp/esp-thread-br/examples/basic_thread_border_router/build/esp-idf/esp_system/ld -L/home/crazyharry/esp/esp-idf/components/esp_phy/lib/esp32s3 -L/home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3 esp-idf/xtensa/libxtensa.a esp-idf/esp_ringbuf/libesp_ringbuf.a esp-idf/efuse/libefuse.a esp-idf/driver/libdriver.a esp-idf/esp_pm/libesp_pm.a esp-idf/mbedtls/libmbedtls.a esp-idf/esp_bootloader_format/libesp_bootloader_format.a esp-idf/esp_app_format/libesp_app_format.a esp-idf/bootloader_support/libbootloader_support.a esp-idf/esp_partition/libesp_partition.a esp-idf/app_update/libapp_update.a esp-idf/esp_mm/libesp_mm.a esp-idf/spi_flash/libspi_flash.a esp-idf/pthread/libpthread.a esp-idf/esp_system/libesp_system.a esp-idf/esp_rom/libesp_rom.a esp-idf/hal/libhal.a esp-idf/log/liblog.a esp-idf/heap/libheap.a esp-idf/soc/libsoc.a esp-idf/esp_hw_support/libesp_hw_support.a esp-idf/freertos/libfreertos.a esp-idf/newlib/libnewlib.a esp-idf/cxx/libcxx.a esp-idf/esp_common/libesp_common.a esp-idf/esp_timer/libesp_timer.a esp-idf/app_trace/libapp_trace.a esp-idf/esp_event/libesp_event.a esp-idf/nvs_flash/libnvs_flash.a esp-idf/esp_phy/libesp_phy.a esp-idf/vfs/libvfs.a esp-idf/lwip/liblwip.a esp-idf/esp_netif/libesp_netif.a esp-idf/wpa_supplicant/libwpa_supplicant.a esp-idf/esp_coex/libesp_coex.a esp-idf/esp_wifi/libesp_wifi.a esp-idf/unity/libunity.a esp-idf/cmock/libcmock.a esp-idf/console/libconsole.a esp-idf/http_parser/libhttp_parser.a esp-idf/esp-tls/libesp-tls.a esp-idf/esp_adc/libesp_adc.a esp-idf/esp_eth/libesp_eth.a esp-idf/esp_gdbstub/libesp_gdbstub.a esp-idf/esp_hid/libesp_hid.a esp-idf/tcp_transport/libtcp_transport.a esp-idf/esp_http_client/libesp_http_client.a esp-idf/esp_http_server/libesp_http_server.a esp-idf/esp_https_ota/libesp_https_ota.a esp-idf/esp_lcd/libesp_lcd.a esp-idf/protobuf-c/libprotobuf-c.a esp-idf/protocomm/libprotocomm.a esp-idf/esp_local_ctrl/libesp_local_ctrl.a esp-idf/espcoredump/libespcoredump.a esp-idf/wear_levelling/libwear_levelling.a esp-idf/sdmmc/libsdmmc.a esp-idf/fatfs/libfatfs.a esp-idf/json/libjson.a esp-idf/mqtt/libmqtt.a esp-idf/nvs_sec_provider/libnvs_sec_provider.a esp-idf/openthread/libopenthread.a esp-idf/perfmon/libperfmon.a esp-idf/spiffs/libspiffs.a esp-idf/touch_element/libtouch_element.a esp-idf/ulp/libulp.a esp-idf/usb/libusb.a esp-idf/wifi_provisioning/libwifi_provisioning.a esp-idf/espressif__esp-serial-flasher/libespressif__esp-serial-flasher.a esp-idf/iperf/libiperf.a esp-idf/espressif__esp_ot_cli_extension/libespressif__esp_ot_cli_extension.a esp-idf/espressif__esp_rcp_update/libespressif__esp_rcp_update.a esp-idf/espressif__mdns/libespressif__mdns.a esp-idf/main/libmain.a esp-idf/border_router_board/libborder_router_board.a esp-idf/thread_border_router/libthread_border_router.a esp-idf/esp_br_http_ota/libesp_br_http_ota.a esp-idf/protocol_examples_common/libprotocol_examples_common.a esp-idf/esp_ot_br_server/libesp_ot_br_server.a esp-idf/app_trace/libapp_trace.a esp-idf/app_trace/libapp_trace.a esp-idf/cmock/libcmock.a esp-idf/unity/libunity.a esp-idf/esp_hid/libesp_hid.a esp-idf/esp_lcd/libesp_lcd.a esp-idf/esp_local_ctrl/libesp_local_ctrl.a esp-idf/espcoredump/libespcoredump.a esp-idf/mqtt/libmqtt.a esp-idf/nvs_sec_provider/libnvs_sec_provider.a -u nvs_sec_provider_include_impl esp-idf/perfmon/libperfmon.a esp-idf/touch_element/libtouch_element.a esp-idf/usb/libusb.a esp-idf/wifi_provisioning/libwifi_provisioning.a esp-idf/protocomm/libprotocomm.a esp-idf/protobuf-c/libprotobuf-c.a esp-idf/espressif__esp_ot_cli_extension/libespressif__esp_ot_cli_extension.a esp-idf/iperf/libiperf.a esp-idf/border_router_board/libborder_router_board.a esp-idf/esp_br_http_ota/libesp_br_http_ota.a esp-idf/espressif__esp_rcp_update/libespressif__esp_rcp_update.a esp-idf/espressif__esp-serial-flasher/libespressif__esp-serial-flasher.a esp-idf/fatfs/libfatfs.a esp-idf/wear_levelling/libwear_levelling.a esp-idf/sdmmc/libsdmmc.a esp-idf/json/libjson.a esp-idf/spiffs/libspiffs.a esp-idf/espressif__mdns/libespressif__mdns.a esp-idf/protocol_examples_common/libprotocol_examples_common.a esp-idf/xtensa/libxtensa.a esp-idf/esp_ringbuf/libesp_ringbuf.a esp-idf/efuse/libefuse.a esp-idf/driver/libdriver.a esp-idf/esp_pm/libesp_pm.a esp-idf/mbedtls/libmbedtls.a esp-idf/esp_bootloader_format/libesp_bootloader_format.a esp-idf/esp_app_format/libesp_app_format.a esp-idf/bootloader_support/libbootloader_support.a esp-idf/esp_partition/libesp_partition.a esp-idf/app_update/libapp_update.a esp-idf/esp_mm/libesp_mm.a esp-idf/spi_flash/libspi_flash.a esp-idf/pthread/libpthread.a esp-idf/esp_system/libesp_system.a esp-idf/esp_rom/libesp_rom.a esp-idf/hal/libhal.a esp-idf/log/liblog.a esp-idf/heap/libheap.a esp-idf/soc/libsoc.a esp-idf/esp_hw_support/libesp_hw_support.a esp-idf/freertos/libfreertos.a esp-idf/newlib/libnewlib.a esp-idf/cxx/libcxx.a esp-idf/esp_common/libesp_common.a esp-idf/esp_timer/libesp_timer.a esp-idf/esp_event/libesp_event.a esp-idf/nvs_flash/libnvs_flash.a esp-idf/esp_phy/libesp_phy.a esp-idf/vfs/libvfs.a esp-idf/lwip/liblwip.a esp-idf/esp_netif/libesp_netif.a esp-idf/wpa_supplicant/libwpa_supplicant.a esp-idf/esp_coex/libesp_coex.a esp-idf/esp_wifi/libesp_wifi.a esp-idf/console/libconsole.a esp-idf/http_parser/libhttp_parser.a esp-idf/esp-tls/libesp-tls.a esp-idf/esp_adc/libesp_adc.a esp-idf/esp_eth/libesp_eth.a esp-idf/esp_gdbstub/libesp_gdbstub.a esp-idf/tcp_transport/libtcp_transport.a esp-idf/esp_http_client/libesp_http_client.a esp-idf/esp_http_server/libesp_http_server.a esp-idf/esp_https_ota/libesp_https_ota.a esp-idf/openthread/libopenthread.a esp-idf/ulp/libulp.a esp-idf/mbedtls/mbedtls/library/libmbedtls.a esp-idf/mbedtls/mbedtls/library/libmbedcrypto.a esp-idf/mbedtls/mbedtls/library/libmbedx509.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libcore.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libespnow.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libmesh.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libnet80211.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libpp.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libsmartconfig.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libwapi.a /home/crazyharry/esp/esp-idf/components/openthread/lib/esp32s3/libopenthread_br.a esp-idf/xtensa/libxtensa.a esp-idf/esp_ringbuf/libesp_ringbuf.a esp-idf/efuse/libefuse.a esp-idf/driver/libdriver.a esp-idf/esp_pm/libesp_pm.a esp-idf/mbedtls/libmbedtls.a esp-idf/esp_bootloader_format/libesp_bootloader_format.a esp-idf/esp_app_format/libesp_app_format.a esp-idf/bootloader_support/libbootloader_support.a esp-idf/esp_partition/libesp_partition.a esp-idf/app_update/libapp_update.a esp-idf/esp_mm/libesp_mm.a esp-idf/spi_flash/libspi_flash.a esp-idf/pthread/libpthread.a esp-idf/esp_system/libesp_system.a esp-idf/esp_rom/libesp_rom.a esp-idf/hal/libhal.a esp-idf/log/liblog.a esp-idf/heap/libheap.a esp-idf/soc/libsoc.a esp-idf/esp_hw_support/libesp_hw_support.a esp-idf/freertos/libfreertos.a esp-idf/newlib/libnewlib.a esp-idf/cxx/libcxx.a esp-idf/esp_common/libesp_common.a esp-idf/esp_timer/libesp_timer.a esp-idf/esp_event/libesp_event.a esp-idf/nvs_flash/libnvs_flash.a esp-idf/esp_phy/libesp_phy.a esp-idf/vfs/libvfs.a esp-idf/lwip/liblwip.a esp-idf/esp_netif/libesp_netif.a esp-idf/wpa_supplicant/libwpa_supplicant.a esp-idf/esp_coex/libesp_coex.a esp-idf/esp_wifi/libesp_wifi.a esp-idf/console/libconsole.a esp-idf/http_parser/libhttp_parser.a esp-idf/esp-tls/libesp-tls.a esp-idf/esp_adc/libesp_adc.a esp-idf/esp_eth/libesp_eth.a esp-idf/esp_gdbstub/libesp_gdbstub.a esp-idf/tcp_transport/libtcp_transport.a esp-idf/esp_http_client/libesp_http_client.a esp-idf/esp_http_server/libesp_http_server.a esp-idf/esp_https_ota/libesp_https_ota.a esp-idf/openthread/libopenthread.a esp-idf/ulp/libulp.a esp-idf/mbedtls/mbedtls/library/libmbedtls.a esp-idf/mbedtls/mbedtls/library/libmbedcrypto.a esp-idf/mbedtls/mbedtls/library/libmbedx509.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libcore.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libespnow.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libmesh.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libnet80211.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libpp.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libsmartconfig.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libwapi.a /home/crazyharry/esp/esp-idf/components/openthread/lib/esp32s3/libopenthread_br.a esp-idf/xtensa/libxtensa.a esp-idf/esp_ringbuf/libesp_ringbuf.a esp-idf/efuse/libefuse.a esp-idf/driver/libdriver.a esp-idf/esp_pm/libesp_pm.a esp-idf/mbedtls/libmbedtls.a esp-idf/esp_bootloader_format/libesp_bootloader_format.a esp-idf/esp_app_format/libesp_app_format.a esp-idf/bootloader_support/libbootloader_support.a esp-idf/esp_partition/libesp_partition.a esp-idf/app_update/libapp_update.a esp-idf/esp_mm/libesp_mm.a esp-idf/spi_flash/libspi_flash.a esp-idf/pthread/libpthread.a esp-idf/esp_system/libesp_system.a esp-idf/esp_rom/libesp_rom.a esp-idf/hal/libhal.a esp-idf/log/liblog.a esp-idf/heap/libheap.a esp-idf/soc/libsoc.a esp-idf/esp_hw_support/libesp_hw_support.a esp-idf/freertos/libfreertos.a esp-idf/newlib/libnewlib.a esp-idf/cxx/libcxx.a esp-idf/esp_common/libesp_common.a esp-idf/esp_timer/libesp_timer.a esp-idf/esp_event/libesp_event.a esp-idf/nvs_flash/libnvs_flash.a esp-idf/esp_phy/libesp_phy.a esp-idf/vfs/libvfs.a esp-idf/lwip/liblwip.a esp-idf/esp_netif/libesp_netif.a esp-idf/wpa_supplicant/libwpa_supplicant.a esp-idf/esp_coex/libesp_coex.a esp-idf/esp_wifi/libesp_wifi.a esp-idf/console/libconsole.a esp-idf/http_parser/libhttp_parser.a esp-idf/esp-tls/libesp-tls.a esp-idf/esp_adc/libesp_adc.a esp-idf/esp_eth/libesp_eth.a esp-idf/esp_gdbstub/libesp_gdbstub.a esp-idf/tcp_transport/libtcp_transport.a esp-idf/esp_http_client/libesp_http_client.a esp-idf/esp_http_server/libesp_http_server.a esp-idf/esp_https_ota/libesp_https_ota.a esp-idf/openthread/libopenthread.a esp-idf/ulp/libulp.a esp-idf/mbedtls/mbedtls/library/libmbedtls.a esp-idf/mbedtls/mbedtls/library/libmbedcrypto.a esp-idf/mbedtls/mbedtls/library/libmbedx509.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libcore.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libespnow.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libmesh.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libnet80211.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libpp.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libsmartconfig.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libwapi.a /home/crazyharry/esp/esp-idf/components/openthread/lib/esp32s3/libopenthread_br.a esp-idf/xtensa/libxtensa.a esp-idf/esp_ringbuf/libesp_ringbuf.a esp-idf/efuse/libefuse.a esp-idf/driver/libdriver.a esp-idf/esp_pm/libesp_pm.a esp-idf/mbedtls/libmbedtls.a esp-idf/esp_bootloader_format/libesp_bootloader_format.a esp-idf/esp_app_format/libesp_app_format.a esp-idf/bootloader_support/libbootloader_support.a esp-idf/esp_partition/libesp_partition.a esp-idf/app_update/libapp_update.a esp-idf/esp_mm/libesp_mm.a esp-idf/spi_flash/libspi_flash.a esp-idf/pthread/libpthread.a esp-idf/esp_system/libesp_system.a esp-idf/esp_rom/libesp_rom.a esp-idf/hal/libhal.a esp-idf/log/liblog.a esp-idf/heap/libheap.a esp-idf/soc/libsoc.a esp-idf/esp_hw_support/libesp_hw_support.a esp-idf/freertos/libfreertos.a esp-idf/newlib/libnewlib.a esp-idf/cxx/libcxx.a esp-idf/esp_common/libesp_common.a esp-idf/esp_timer/libesp_timer.a esp-idf/esp_event/libesp_event.a esp-idf/nvs_flash/libnvs_flash.a esp-idf/esp_phy/libesp_phy.a esp-idf/vfs/libvfs.a esp-idf/lwip/liblwip.a esp-idf/esp_netif/libesp_netif.a esp-idf/wpa_supplicant/libwpa_supplicant.a esp-idf/esp_coex/libesp_coex.a esp-idf/esp_wifi/libesp_wifi.a esp-idf/console/libconsole.a esp-idf/http_parser/libhttp_parser.a esp-idf/esp-tls/libesp-tls.a esp-idf/esp_adc/libesp_adc.a esp-idf/esp_eth/libesp_eth.a esp-idf/esp_gdbstub/libesp_gdbstub.a esp-idf/tcp_transport/libtcp_transport.a esp-idf/esp_http_client/libesp_http_client.a esp-idf/esp_http_server/libesp_http_server.a esp-idf/esp_https_ota/libesp_https_ota.a esp-idf/openthread/libopenthread.a esp-idf/ulp/libulp.a esp-idf/mbedtls/mbedtls/library/libmbedtls.a esp-idf/mbedtls/mbedtls/library/libmbedcrypto.a esp-idf/mbedtls/mbedtls/library/libmbedx509.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libcore.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libespnow.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libmesh.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libnet80211.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libpp.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libsmartconfig.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libwapi.a /home/crazyharry/esp/esp-idf/components/openthread/lib/esp32s3/libopenthread_br.a esp-idf/xtensa/libxtensa.a esp-idf/esp_ringbuf/libesp_ringbuf.a esp-idf/efuse/libefuse.a esp-idf/driver/libdriver.a esp-idf/esp_pm/libesp_pm.a esp-idf/mbedtls/libmbedtls.a esp-idf/esp_bootloader_format/libesp_bootloader_format.a esp-idf/esp_app_format/libesp_app_format.a esp-idf/bootloader_support/libbootloader_support.a esp-idf/esp_partition/libesp_partition.a esp-idf/app_update/libapp_update.a esp-idf/esp_mm/libesp_mm.a esp-idf/spi_flash/libspi_flash.a esp-idf/pthread/libpthread.a esp-idf/esp_system/libesp_system.a esp-idf/esp_rom/libesp_rom.a esp-idf/hal/libhal.a esp-idf/log/liblog.a esp-idf/heap/libheap.a esp-idf/soc/libsoc.a esp-idf/esp_hw_support/libesp_hw_support.a esp-idf/freertos/libfreertos.a esp-idf/newlib/libnewlib.a esp-idf/cxx/libcxx.a esp-idf/esp_common/libesp_common.a esp-idf/esp_timer/libesp_timer.a esp-idf/esp_event/libesp_event.a esp-idf/nvs_flash/libnvs_flash.a esp-idf/esp_phy/libesp_phy.a esp-idf/vfs/libvfs.a esp-idf/lwip/liblwip.a esp-idf/esp_netif/libesp_netif.a esp-idf/wpa_supplicant/libwpa_supplicant.a esp-idf/esp_coex/libesp_coex.a esp-idf/esp_wifi/libesp_wifi.a esp-idf/console/libconsole.a esp-idf/http_parser/libhttp_parser.a esp-idf/esp-tls/libesp-tls.a esp-idf/esp_adc/libesp_adc.a esp-idf/esp_eth/libesp_eth.a esp-idf/esp_gdbstub/libesp_gdbstub.a esp-idf/tcp_transport/libtcp_transport.a esp-idf/esp_http_client/libesp_http_client.a esp-idf/esp_http_server/libesp_http_server.a esp-idf/esp_https_ota/libesp_https_ota.a esp-idf/openthread/libopenthread.a esp-idf/ulp/libulp.a esp-idf/mbedtls/mbedtls/library/libmbedtls.a esp-idf/mbedtls/mbedtls/library/libmbedcrypto.a esp-idf/mbedtls/mbedtls/library/libmbedx509.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libcore.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libespnow.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libmesh.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libnet80211.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libpp.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libsmartconfig.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libwapi.a /home/crazyharry/esp/esp-idf/components/openthread/lib/esp32s3/libopenthread_br.a esp-idf/xtensa/libxtensa.a esp-idf/esp_ringbuf/libesp_ringbuf.a esp-idf/efuse/libefuse.a esp-idf/driver/libdriver.a esp-idf/esp_pm/libesp_pm.a esp-idf/mbedtls/libmbedtls.a esp-idf/esp_bootloader_format/libesp_bootloader_format.a esp-idf/esp_app_format/libesp_app_format.a esp-idf/bootloader_support/libbootloader_support.a esp-idf/esp_partition/libesp_partition.a esp-idf/app_update/libapp_update.a esp-idf/esp_mm/libesp_mm.a esp-idf/spi_flash/libspi_flash.a esp-idf/pthread/libpthread.a esp-idf/esp_system/libesp_system.a esp-idf/esp_rom/libesp_rom.a esp-idf/hal/libhal.a esp-idf/log/liblog.a esp-idf/heap/libheap.a esp-idf/soc/libsoc.a esp-idf/esp_hw_support/libesp_hw_support.a esp-idf/freertos/libfreertos.a esp-idf/newlib/libnewlib.a esp-idf/cxx/libcxx.a esp-idf/esp_common/libesp_common.a esp-idf/esp_timer/libesp_timer.a esp-idf/esp_event/libesp_event.a esp-idf/nvs_flash/libnvs_flash.a esp-idf/esp_phy/libesp_phy.a esp-idf/vfs/libvfs.a esp-idf/lwip/liblwip.a esp-idf/esp_netif/libesp_netif.a esp-idf/wpa_supplicant/libwpa_supplicant.a esp-idf/esp_coex/libesp_coex.a esp-idf/esp_wifi/libesp_wifi.a esp-idf/console/libconsole.a esp-idf/http_parser/libhttp_parser.a esp-idf/esp-tls/libesp-tls.a esp-idf/esp_adc/libesp_adc.a esp-idf/esp_eth/libesp_eth.a esp-idf/esp_gdbstub/libesp_gdbstub.a esp-idf/tcp_transport/libtcp_transport.a esp-idf/esp_http_client/libesp_http_client.a esp-idf/esp_http_server/libesp_http_server.a esp-idf/esp_https_ota/libesp_https_ota.a esp-idf/openthread/libopenthread.a esp-idf/ulp/libulp.a esp-idf/mbedtls/mbedtls/library/libmbedtls.a esp-idf/mbedtls/mbedtls/library/libmbedcrypto.a esp-idf/mbedtls/mbedtls/library/libmbedx509.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libcore.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libespnow.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libmesh.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libnet80211.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libpp.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libsmartconfig.a /home/crazyharry/esp/esp-idf/components/esp_wifi/lib/esp32s3/libwapi.a /home/crazyharry/esp/esp-idf/components/openthread/lib/esp32s3/libopenthread_br.a /home/crazyharry/esp/esp-idf/components/xtensa/esp32s3/libxt_hal.a -u esp_app_desc -u pthread_include_pthread_impl -u pthread_include_pthread_cond_impl -u pthread_include_pthread_local_storage_impl -u pthread_include_pthread_rwlock_impl -u pthread_include_pthread_semaphore_impl -u ld_include_highint_hdl -u start_app -u start_app_other_cores -u __ubsan_include -Wl,--wrap=longjmp -u __assert_func -Wl,--undefined=FreeRTOS_openocd_params -u app_main -lc -lm esp-idf/newlib/libnewlib.a -u newlib_include_heap_impl -u newlib_include_syscalls_impl -u newlib_include_pthread_impl -u newlib_include_assert_impl -Wl,--wrap=_Unwind_SetEnableExceptionFdeSorting -Wl,--wrap=__register_frame_info_bases -Wl,--wrap=__register_frame_info -Wl,--wrap=__register_frame -Wl,--wrap=__register_frame_info_table_bases -Wl,--wrap=__register_frame_info_table -Wl,--wrap=__register_frame_table -Wl,--wrap=__deregister_frame_info_bases -Wl,--wrap=__deregister_frame_info -Wl,--wrap=_Unwind_Find_FDE -Wl,--wrap=_Unwind_GetGR -Wl,--wrap=_Unwind_GetCFA -Wl,--wrap=_Unwind_GetIP -Wl,--wrap=_Unwind_GetIPInfo -Wl,--wrap=_Unwind_GetRegionStart -Wl,--wrap=_Unwind_GetDataRelBase -Wl,--wrap=_Unwind_GetTextRelBase -Wl,--wrap=_Unwind_SetIP -Wl,--wrap=_Unwind_SetGR -Wl,--wrap=_Unwind_GetLanguageSpecificData -Wl,--wrap=_Unwind_FindEnclosingFunction -Wl,--wrap=_Unwind_Resume -Wl,--wrap=_Unwind_RaiseException -Wl,--wrap=_Unwind_DeleteException -Wl,--wrap=_Unwind_ForcedUnwind -Wl,--wrap=_Unwind_Resume_or_Rethrow -Wl,--wrap=_Unwind_Backtrace -Wl,--wrap=__cxa_call_unexpected -Wl,--wrap=__gxx_personality_v0 -u __cxa_guard_dummy -lstdc++ esp-idf/pthread/libpthread.a -lgcc esp-idf/cxx/libcxx.a -u __cxx_fatal_exception -u include_esp_phy_override -lphy -lbtbb esp-idf/esp_phy/libesp_phy.a -lphy -lbtbb esp-idf/esp_phy/libesp_phy.a -lphy -lbtbb -u vfs_include_syscalls_impl && : /home/crazyharry/.espressif/tools/xtensa-esp32s3-elf/esp-12.2.0_20230208/xtensa-esp32s3-elf/bin/../lib/gcc/xtensa-esp32s3-elf/12.2.0/../../../../xtensa-esp32s3-elf/bin/ld: esp-idf/esp_ot_br_server/libesp_ot_br_server.a(esp_br_web_api.c.obj):(.literal.handle_openthread_join_network_request+0x64): undefined reference to otJoinerStart'
/home/crazyharry/.espressif/tools/xtensa-esp32s3-elf/esp-12.2.0_20230208/xtensa-esp32s3-elf/bin/../lib/gcc/xtensa-esp32s3-elf/12.2.0/../../../../xtensa-esp32s3-elf/bin/ld: esp-idf/esp_ot_br_server/libesp_ot_br_server.a(esp_br_web_api.c.obj):(.literal.handle_openthread_network_commission_request+0x34): undefined reference to otCommissionerGetState' /home/crazyharry/.espressif/tools/xtensa-esp32s3-elf/esp-12.2.0_20230208/xtensa-esp32s3-elf/bin/../lib/gcc/xtensa-esp32s3-elf/12.2.0/../../../../xtensa-esp32s3-elf/bin/ld: esp-idf/esp_ot_br_server/libesp_ot_br_server.a(esp_br_web_api.c.obj):(.literal.handle_openthread_network_commission_request+0x38): undefined reference to otCommissionerStart'
/home/crazyharry/.espressif/tools/xtensa-esp32s3-elf/esp-12.2.0_20230208/xtensa-esp32s3-elf/bin/../lib/gcc/xtensa-esp32s3-elf/12.2.0/../../../../xtensa-esp32s3-elf/bin/ld: esp-idf/esp_ot_br_server/libesp_ot_br_server.a(esp_br_web_api.c.obj):(.literal.handle_openthread_network_commission_request+0x3c): undefined reference to otCommissionerAddJoinerWithDiscerner' /home/crazyharry/.espressif/tools/xtensa-esp32s3-elf/esp-12.2.0_20230208/xtensa-esp32s3-elf/bin/../lib/gcc/xtensa-esp32s3-elf/12.2.0/../../../../xtensa-esp32s3-elf/bin/ld: esp-idf/esp_ot_br_server/libesp_ot_br_server.a(esp_br_web_api.c.obj):(.literal.handle_openthread_network_commission_request+0x40): undefined reference to otCommissionerAddJoiner'
/home/crazyharry/.espressif/tools/xtensa-esp32s3-elf/esp-12.2.0_20230208/xtensa-esp32s3-elf/bin/../lib/gcc/xtensa-esp32s3-elf/12.2.0/../../../../xtensa-esp32s3-elf/bin/ld: esp-idf/esp_ot_br_server/libesp_ot_br_server.a(esp_br_web_api.c.obj): in function handle_openthread_join_network_request': /home/crazyharry/esp/esp-thread-br/components/esp_ot_br_server/src/esp_br_web_api.c:468: undefined reference to otJoinerStart'
/home/crazyharry/.espressif/tools/xtensa-esp32s3-elf/esp-12.2.0_20230208/xtensa-esp32s3-elf/bin/../lib/gcc/xtensa-esp32s3-elf/12.2.0/../../../../xtensa-esp32s3-elf/bin/ld: esp-idf/esp_ot_br_server/libesp_ot_br_server.a(esp_br_web_api.c.obj): in function handle_openthread_network_commission_request': /home/crazyharry/esp/esp-thread-br/components/esp_ot_br_server/src/esp_br_web_api.c:601: undefined reference to otCommissionerGetState'
/home/crazyharry/.espressif/tools/xtensa-esp32s3-elf/esp-12.2.0_20230208/xtensa-esp32s3-elf/bin/../lib/gcc/xtensa-esp32s3-elf/12.2.0/../../../../xtensa-esp32s3-elf/bin/ld: /home/crazyharry/esp/esp-thread-br/components/esp_ot_br_server/src/esp_br_web_api.c:606: undefined reference to otCommissionerStart' /home/crazyharry/.espressif/tools/xtensa-esp32s3-elf/esp-12.2.0_20230208/xtensa-esp32s3-elf/bin/../lib/gcc/xtensa-esp32s3-elf/12.2.0/../../../../xtensa-esp32s3-elf/bin/ld: /home/crazyharry/esp/esp-thread-br/components/esp_ot_br_server/src/esp_br_web_api.c:620: undefined reference to otCommissionerAddJoinerWithDiscerner'
/home/crazyharry/.espressif/tools/xtensa-esp32s3-elf/esp-12.2.0_20230208/xtensa-esp32s3-elf/bin/../lib/gcc/xtensa-esp32s3-elf/12.2.0/../../../../xtensa-esp32s3-elf/bin/ld: /home/crazyharry/esp/esp-thread-br/components/esp_ot_br_server/src/esp_br_web_api.c:623: undefined reference to otCommissionerAddJoiner' collect2: error: ld returned 1 exit status ninja: build stopped: subcommand failed. ninja failed with exit code 1, output of the command is in the /home/crazyharry/esp/esp-thread-br/examples/basic_thread_border_router/build/log/idf_py_stderr_output_143218 and /home/crazyharry/esp/esp-thread-br/examples/basic_thread_border_router/build/log/idf_py_stdout_output_143218

@gytxxsy
Copy link
Contributor

gytxxsy commented Jul 31, 2023

I think it's necessary to open the joiner and commissioner via idf.py menuconfig. The path is as follows.

Component config > OPenThread > Enable Commissioner
Component config > OPenThread > Enable Joiner

image

image

image

@DrewOJensen
Copy link
Author

DrewOJensen commented Aug 1, 2023

Hot dang, thanks for pointing those out. I'll have to dig through the documentation to understand all of those component options. I had wrongly assumed that by enabling the web server feature, that it would automatically enabled any dependencies within the config.

Thanks again for all your help.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants