espressif / esp-idf

Espressif IoT Development Framework. Official development framework for Espressif SoCs.
Apache License 2.0
13.65k stars 7.29k forks source link

esp_hid_host fails to build with Secure Simple Pairing disabled (CONFIG_BT_SSP_ENABLED=n) (IDFGH-8622) #10069

Closed boernsen-development closed 1 year ago

boernsen-development commented 2 years ago

Answers checklist.

IDF version.

v5.1-dev-1496-gbd18096cb4

Operating System used.

Linux

How did you build your project?

Command line with idf.py

If you are using Windows, please specify command line type.

No response

What is the expected behavior?

I expected the esp_hid_host example to build successfully when CONFIG_BT_SSP_ENABLED=n.

What is the actual behavior?

The esp_hid_host example has build errors when CONFIG_BT_SSP_ENABLED=n.

Steps to reproduce.

  1. Check out bd18096
  2. Install, export and copy esp_hid_host example according to Get Started guide
  3. Set CONFIG_BT_SSP_ENABLED=n in sdkconfig
  4. Build

Build or installation Logs.

Executing action: all (aliases: build)
Running cmake in directory /home/boernsen/eclipse-workspace/esp_hid_host_master_20221027_163932_bd18096cb4/build
Executing "cmake -G Ninja -DPYTHON_DEPS_CHECKED=1 -DPYTHON=/home/boernsen/.espressif/python_env/idf5.1_py3.8_env/bin/python -DESP_PLATFORM=1 -DCCACHE_ENABLE=0 /home/boernsen/eclipse-workspace/esp_hid_host_master_20221027_163932_bd18096cb4"...
-- IDF_TARGET not set, using default target: esp32
-- Found Git: /usr/bin/git (found version "2.25.1") 
-- The C compiler identification is GNU 11.2.0
-- The CXX compiler identification is GNU 11.2.0
-- The ASM compiler identification is GNU
-- Found assembler: /home/boernsen/.espressif/tools/xtensa-esp32-elf/esp-2022r1-11.2.0/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc
-- Check for working C compiler: /home/boernsen/.espressif/tools/xtensa-esp32-elf/esp-2022r1-11.2.0/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc
-- Check for working C compiler: /home/boernsen/.espressif/tools/xtensa-esp32-elf/esp-2022r1-11.2.0/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /home/boernsen/.espressif/tools/xtensa-esp32-elf/esp-2022r1-11.2.0/xtensa-esp32-elf/bin/xtensa-esp32-elf-g++
-- Check for working CXX compiler: /home/boernsen/.espressif/tools/xtensa-esp32-elf/esp-2022r1-11.2.0/xtensa-esp32-elf/bin/xtensa-esp32-elf-g++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Building ESP-IDF components for target esp32
-- Project sdkconfig file /home/boernsen/eclipse-workspace/esp_hid_host_master_20221027_163932_bd18096cb4/sdkconfig
Loading defaults file /home/boernsen/eclipse-workspace/esp_hid_host_master_20221027_163932_bd18096cb4/sdkconfig.defaults...
-- Looking for sys/types.h
-- Looking for sys/types.h - found
-- Looking for stdint.h
-- Looking for stdint.h - found
-- Looking for stddef.h
-- Looking for stddef.h - found
-- Check size of time_t
-- Check size of time_t - done
-- Found Python3: /home/boernsen/.espressif/python_env/idf5.1_py3.8_env/bin/python (found version "3.8.10") found components: Interpreter 
-- Performing Test C_COMPILER_SUPPORTS_WFORMAT_SIGNEDNESS
-- Performing Test C_COMPILER_SUPPORTS_WFORMAT_SIGNEDNESS - Success
-- App "esp_hid_host" version: bee3c79
-- Adding linker script /home/boernsen/eclipse-workspace/esp_hid_host_master_20221027_163932_bd18096cb4/build/esp-idf/esp_system/ld/memory.ld
-- Adding linker script /home/boernsen/esp-idf/master/esp-idf/components/esp_system/ld/esp32/sections.ld.in
-- Adding linker script /home/boernsen/esp-idf/master/esp-idf/components/esp_rom/esp32/ld/esp32.rom.ld
-- Adding linker script /home/boernsen/esp-idf/master/esp-idf/components/esp_rom/esp32/ld/esp32.rom.api.ld
-- Adding linker script /home/boernsen/esp-idf/master/esp-idf/components/esp_rom/esp32/ld/esp32.rom.libgcc.ld
-- Adding linker script /home/boernsen/esp-idf/master/esp-idf/components/esp_rom/esp32/ld/esp32.rom.newlib-data.ld
-- Adding linker script /home/boernsen/esp-idf/master/esp-idf/components/esp_rom/esp32/ld/esp32.rom.syscalls.ld
-- Adding linker script /home/boernsen/esp-idf/master/esp-idf/components/esp_rom/esp32/ld/esp32.rom.newlib-funcs.ld
-- Adding linker script /home/boernsen/esp-idf/master/esp-idf/components/soc/esp32/ld/esp32.peripherals.ld
-- Components: app_trace app_update bootloader bootloader_support bt cmock console cxx driver efuse esp-tls esp_adc esp_app_format esp_common esp_eth esp_event esp_gdbstub esp_hid esp_http_client esp_http_server esp_https_ota esp_https_server esp_hw_support esp_lcd esp_local_ctrl esp_netif esp_phy esp_pm esp_psram esp_ringbuf esp_rom esp_system esp_timer esp_wifi espcoredump esptool_py fatfs freertos hal heap http_parser idf_test ieee802154 json log lwip main mbedtls mqtt newlib nvs_flash openthread partition_table perfmon protobuf-c protocomm pthread sdmmc soc spi_flash spiffs tcp_transport tinyusb ulp unity usb vfs wear_levelling wifi_provisioning wpa_supplicant xtensa
-- Component paths: /home/boernsen/esp-idf/master/esp-idf/components/app_trace /home/boernsen/esp-idf/master/esp-idf/components/app_update /home/boernsen/esp-idf/master/esp-idf/components/bootloader /home/boernsen/esp-idf/master/esp-idf/components/bootloader_support /home/boernsen/esp-idf/master/esp-idf/components/bt /home/boernsen/esp-idf/master/esp-idf/components/cmock /home/boernsen/esp-idf/master/esp-idf/components/console /home/boernsen/esp-idf/master/esp-idf/components/cxx /home/boernsen/esp-idf/master/esp-idf/components/driver /home/boernsen/esp-idf/master/esp-idf/components/efuse /home/boernsen/esp-idf/master/esp-idf/components/esp-tls /home/boernsen/esp-idf/master/esp-idf/components/esp_adc /home/boernsen/esp-idf/master/esp-idf/components/esp_app_format /home/boernsen/esp-idf/master/esp-idf/components/esp_common /home/boernsen/esp-idf/master/esp-idf/components/esp_eth /home/boernsen/esp-idf/master/esp-idf/components/esp_event /home/boernsen/esp-idf/master/esp-idf/components/esp_gdbstub /home/boernsen/esp-idf/master/esp-idf/components/esp_hid /home/boernsen/esp-idf/master/esp-idf/components/esp_http_client /home/boernsen/esp-idf/master/esp-idf/components/esp_http_server /home/boernsen/esp-idf/master/esp-idf/components/esp_https_ota /home/boernsen/esp-idf/master/esp-idf/components/esp_https_server /home/boernsen/esp-idf/master/esp-idf/components/esp_hw_support /home/boernsen/esp-idf/master/esp-idf/components/esp_lcd /home/boernsen/esp-idf/master/esp-idf/components/esp_local_ctrl /home/boernsen/esp-idf/master/esp-idf/components/esp_netif /home/boernsen/esp-idf/master/esp-idf/components/esp_phy /home/boernsen/esp-idf/master/esp-idf/components/esp_pm /home/boernsen/esp-idf/master/esp-idf/components/esp_psram /home/boernsen/esp-idf/master/esp-idf/components/esp_ringbuf /home/boernsen/esp-idf/master/esp-idf/components/esp_rom /home/boernsen/esp-idf/master/esp-idf/components/esp_system /home/boernsen/esp-idf/master/esp-idf/components/esp_timer /home/boernsen/esp-idf/master/esp-idf/components/esp_wifi /home/boernsen/esp-idf/master/esp-idf/components/espcoredump /home/boernsen/esp-idf/master/esp-idf/components/esptool_py /home/boernsen/esp-idf/master/esp-idf/components/fatfs /home/boernsen/esp-idf/master/esp-idf/components/freertos /home/boernsen/esp-idf/master/esp-idf/components/hal /home/boernsen/esp-idf/master/esp-idf/components/heap /home/boernsen/esp-idf/master/esp-idf/components/http_parser /home/boernsen/esp-idf/master/esp-idf/components/idf_test /home/boernsen/esp-idf/master/esp-idf/components/ieee802154 /home/boernsen/esp-idf/master/esp-idf/components/json /home/boernsen/esp-idf/master/esp-idf/components/log /home/boernsen/esp-idf/master/esp-idf/components/lwip /home/boernsen/eclipse-workspace/esp_hid_host_master_20221027_163932_bd18096cb4/main /home/boernsen/esp-idf/master/esp-idf/components/mbedtls /home/boernsen/esp-idf/master/esp-idf/components/mqtt /home/boernsen/esp-idf/master/esp-idf/components/newlib /home/boernsen/esp-idf/master/esp-idf/components/nvs_flash /home/boernsen/esp-idf/master/esp-idf/components/openthread /home/boernsen/esp-idf/master/esp-idf/components/partition_table /home/boernsen/esp-idf/master/esp-idf/components/perfmon /home/boernsen/esp-idf/master/esp-idf/components/protobuf-c /home/boernsen/esp-idf/master/esp-idf/components/protocomm /home/boernsen/esp-idf/master/esp-idf/components/pthread /home/boernsen/esp-idf/master/esp-idf/components/sdmmc /home/boernsen/esp-idf/master/esp-idf/components/soc /home/boernsen/esp-idf/master/esp-idf/components/spi_flash /home/boernsen/esp-idf/master/esp-idf/components/spiffs /home/boernsen/esp-idf/master/esp-idf/components/tcp_transport /home/boernsen/esp-idf/master/esp-idf/components/tinyusb /home/boernsen/esp-idf/master/esp-idf/components/ulp /home/boernsen/esp-idf/master/esp-idf/components/unity /home/boernsen/esp-idf/master/esp-idf/components/usb /home/boernsen/esp-idf/master/esp-idf/components/vfs /home/boernsen/esp-idf/master/esp-idf/components/wear_levelling /home/boernsen/esp-idf/master/esp-idf/components/wifi_provisioning /home/boernsen/esp-idf/master/esp-idf/components/wpa_supplicant /home/boernsen/esp-idf/master/esp-idf/components/xtensa
-- Configuring done
-- Generating done
-- Build files have been written to: /home/boernsen/eclipse-workspace/esp_hid_host_master_20221027_163932_bd18096cb4/build
Running ninja in directory /home/boernsen/eclipse-workspace/esp_hid_host_master_20221027_163932_bd18096cb4/build
Executing "ninja all"...
[9/1148] Generating ../../partition_table/partition-table.binPartition table binary generated. Contents:
*******************************************************************************
# ESP-IDF Partition Table
# Name, Type, SubType, Offset, Size, Flags
nvs,data,nvs,0x9000,24K,
phy_init,data,phy,0xf000,4K,
factory,app,factory,0x10000,1M,
*******************************************************************************
[387/1148] Performing configure step for 'bootloader'-- Found Git: /usr/bin/git (found version "2.25.1") .cpp.obj
-- The C compiler identification is GNU 11.2.0
-- The CXX compiler identification is GNU 11.2.0
-- The ASM compiler identification is GNU
-- Found assembler: /home/boernsen/.espressif/tools/xtensa-esp32-elf/esp-2022r1-11.2.0/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc
-- Check for working C compiler: /home/boernsen/.espressif/tools/xtensa-esp32-elf/esp-2022r1-11.2.0/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc
-- Check for working C compiler: /home/boernsen/.espressif/tools/xtensa-esp32-elf/esp-2022r1-11.2.0/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /home/boernsen/.espressif/tools/xtensa-esp32-elf/esp-2022r1-11.2.0/xtensa-esp32-elf/bin/xtensa-esp32-elf-g++
-- Check for working CXX compiler: /home/boernsen/.espressif/tools/xtensa-esp32-elf/esp-2022r1-11.2.0/xtensa-esp32-elf/bin/xtensa-esp32-elf-g++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Building ESP-IDF components for target esp32
-- Project sdkconfig file /home/boernsen/eclipse-workspace/esp_hid_host_master_20221027_163932_bd18096cb4/sdkconfig
-- Looking for sys/types.h
-- Looking for sys/types.h - found
-- Looking for stdint.h
-- Looking for stdint.h - found
-- Looking for stddef.h
-- Looking for stddef.h - found
-- Check size of time_t
-- Check size of time_t - done
-- Adding linker script /home/boernsen/esp-idf/master/esp-idf/components/soc/esp32/ld/esp32.peripherals.ld
-- App "bootloader" version: v5.1-dev-1496-gbd18096cb4
-- Adding linker script /home/boernsen/esp-idf/master/esp-idf/components/esp_rom/esp32/ld/esp32.rom.ld
-- Adding linker script /home/boernsen/esp-idf/master/esp-idf/components/esp_rom/esp32/ld/esp32.rom.api.ld
-- Adding linker script /home/boernsen/esp-idf/master/esp-idf/components/esp_rom/esp32/ld/esp32.rom.libgcc.ld
-- Adding linker script /home/boernsen/esp-idf/master/esp-idf/components/esp_rom/esp32/ld/esp32.rom.newlib-funcs.ld
-- Adding linker script /home/boernsen/esp-idf/master/esp-idf/components/bootloader/subproject/main/ld/esp32/bootloader.ld
-- Adding linker script /home/boernsen/esp-idf/master/esp-idf/components/bootloader/subproject/main/ld/esp32/bootloader.rom.ld
-- Components: bootloader bootloader_support efuse esp_app_format esp_common esp_hw_support esp_rom esp_system esptool_py freertos hal log main micro-ecc newlib partition_table soc spi_flash xtensa
-- Component paths: /home/boernsen/esp-idf/master/esp-idf/components/bootloader /home/boernsen/esp-idf/master/esp-idf/components/bootloader_support /home/boernsen/esp-idf/master/esp-idf/components/efuse /home/boernsen/esp-idf/master/esp-idf/components/esp_app_format /home/boernsen/esp-idf/master/esp-idf/components/esp_common /home/boernsen/esp-idf/master/esp-idf/components/esp_hw_support /home/boernsen/esp-idf/master/esp-idf/components/esp_rom /home/boernsen/esp-idf/master/esp-idf/components/esp_system /home/boernsen/esp-idf/master/esp-idf/components/esptool_py /home/boernsen/esp-idf/master/esp-idf/components/freertos /home/boernsen/esp-idf/master/esp-idf/components/hal /home/boernsen/esp-idf/master/esp-idf/components/log /home/boernsen/esp-idf/master/esp-idf/components/bootloader/subproject/main /home/boernsen/esp-idf/master/esp-idf/components/bootloader/subproject/components/micro-ecc /home/boernsen/esp-idf/master/esp-idf/components/newlib /home/boernsen/esp-idf/master/esp-idf/components/partition_table /home/boernsen/esp-idf/master/esp-idf/components/soc /home/boernsen/esp-idf/master/esp-idf/components/spi_flash /home/boernsen/esp-idf/master/esp-idf/components/xtensa
-- Configuring done
-- Generating done
-- Build files have been written to: /home/boernsen/eclipse-workspace/esp_hid_host_master_20221027_163932_bd18096cb4/build/bootloader
[100/101] Generating binary image from built executableesptool.py v4.3
Creating esp32 image...
Merged 1 ELF section
Successfully created esp32 image.
Generated /home/boernsen/eclipse-workspace/esp_hid_host_master_20221027_163932_bd18096cb4/build/bootloader/bootloader.bin
[101/101] cd /home/boernsen/eclipse-workspace/esp_hid_host_master_20221027_163932_bd18096cb4/build/bootloader/e.../home/boernsen/eclipse-workspace/esp_hid_host_master_20221027_163932_bd18096cb4/build/bootloader/bootloader.binBootloader binary size 0x66e0 bytes. 0x920 bytes (8%) free.
[1146/1148] Linking CXX executable esp_hid_host.elfFAILED: esp_hid_host.elf c_esp32.c.obj
: && /home/boernsen/.espressif/tools/xtensa-esp32-elf/esp-2022r1-11.2.0/xtensa-esp32-elf/bin/xtensa-esp32-elf-g++  -mlongcalls -Wno-frame-address  -Wl,--cref -Wl,--defsym=IDF_TARGET_ESP32=0 -Wl,--Map=/home/boernsen/eclipse-workspace/esp_hid_host_master_20221027_163932_bd18096cb4/build/esp_hid_host.map -fno-rtti -fno-lto -Wl,--gc-sections -Wl,--warn-common -T esp32.peripherals.ld -T esp32.rom.ld -T esp32.rom.api.ld -T esp32.rom.libgcc.ld -T esp32.rom.newlib-data.ld -T esp32.rom.syscalls.ld -T esp32.rom.newlib-funcs.ld -T memory.ld -T sections.ld CMakeFiles/esp_hid_host.elf.dir/project_elf_src_esp32.c.obj  -o esp_hid_host.elf -L/home/boernsen/esp-idf/master/esp-idf/components/soc/esp32/ld   -L/home/boernsen/esp-idf/master/esp-idf/components/esp_rom/esp32/ld   -L/home/boernsen/eclipse-workspace/esp_hid_host_master_20221027_163932_bd18096cb4/build/esp-idf/esp_system/ld   -L/home/boernsen/esp-idf/master/esp-idf/components/esp_phy/lib/esp32   -L/home/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32   -L/home/boernsen/esp-idf/master/esp-idf/components/bt/controller/lib_esp32/esp32 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_app_format/libesp_app_format.a  esp-idf/bootloader_support/libbootloader_support.a  esp-idf/app_update/libapp_update.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_wifi/libesp_wifi.a  esp-idf/bt/libbt.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/perfmon/libperfmon.a  esp-idf/spiffs/libspiffs.a  esp-idf/ulp/libulp.a  esp-idf/wifi_provisioning/libwifi_provisioning.a  esp-idf/main/libmain.a  esp-idf/app_trace/libapp_trace.a  -lgcov  esp-idf/app_trace/libapp_trace.a  -lgcov  esp-idf/unity/libunity.a  esp-idf/wear_levelling/libwear_levelling.a  esp-idf/sdmmc/libsdmmc.a  esp-idf/protocomm/libprotocomm.a  esp-idf/console/libconsole.a  esp-idf/protobuf-c/libprotobuf-c.a  esp-idf/json/libjson.a  esp-idf/esp_hid/libesp_hid.a  esp-idf/bt/libbt.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_app_format/libesp_app_format.a  esp-idf/bootloader_support/libbootloader_support.a  esp-idf/app_update/libapp_update.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_wifi/libesp_wifi.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/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/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libcoexist.a  /home/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libcore.a  /home/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libespnow.a  /home/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libmesh.a  /home/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libnet80211.a  /home/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libpp.a  /home/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libsmartconfig.a  /home/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libwapi.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_app_format/libesp_app_format.a  esp-idf/bootloader_support/libbootloader_support.a  esp-idf/app_update/libapp_update.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_wifi/libesp_wifi.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/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/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libcoexist.a  /home/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libcore.a  /home/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libespnow.a  /home/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libmesh.a  /home/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libnet80211.a  /home/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libpp.a  /home/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libsmartconfig.a  /home/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libwapi.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_app_format/libesp_app_format.a  esp-idf/bootloader_support/libbootloader_support.a  esp-idf/app_update/libapp_update.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_wifi/libesp_wifi.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/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/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libcoexist.a  /home/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libcore.a  /home/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libespnow.a  /home/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libmesh.a  /home/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libnet80211.a  /home/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libpp.a  /home/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libsmartconfig.a  /home/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libwapi.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_app_format/libesp_app_format.a  esp-idf/bootloader_support/libbootloader_support.a  esp-idf/app_update/libapp_update.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_wifi/libesp_wifi.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/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/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libcoexist.a  /home/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libcore.a  /home/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libespnow.a  /home/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libmesh.a  /home/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libnet80211.a  /home/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libpp.a  /home/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libsmartconfig.a  /home/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libwapi.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_app_format/libesp_app_format.a  esp-idf/bootloader_support/libbootloader_support.a  esp-idf/app_update/libapp_update.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_wifi/libesp_wifi.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/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/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libcoexist.a  /home/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libcore.a  /home/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libespnow.a  /home/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libmesh.a  /home/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libnet80211.a  /home/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libpp.a  /home/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libsmartconfig.a  /home/boernsen/esp-idf/master/esp-idf/components/esp_wifi/lib/esp32/libwapi.a  /home/boernsen/esp-idf/master/esp-idf/components/xtensa/esp32/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 ld_include_highint_hdl  -u start_app  -u start_app_other_cores  -u __ubsan_include  -Wl,--wrap=longjmp  -u __assert_func  -u esp_dport_access_reg_read  -Wl,--undefined=uxTopUsedPriority  -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  -lrtc  esp-idf/esp_phy/libesp_phy.a  -lphy  -lrtc  esp-idf/esp_phy/libesp_phy.a  -lphy  -lrtc  -u vfs_include_syscalls_impl  -lbtdm_app  -u ld_include_hli_vectors_bt && :
/home/boernsen/.espressif/tools/xtensa-esp32-elf/esp-2022r1-11.2.0/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/11.2.0/../../../../xtensa-esp32-elf/bin/ld: esp-idf/main/libmain.a(esp_hid_gap.c.obj):(.literal.init_bt_gap+0x10): undefined reference to `esp_bt_gap_set_security_param'
/home/boernsen/.espressif/tools/xtensa-esp32-elf/esp-2022r1-11.2.0/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/11.2.0/../../../../xtensa-esp32-elf/bin/ld: esp-idf/main/libmain.a(esp_hid_gap.c.obj): in function `init_bt_gap':
/home/boernsen/eclipse-workspace/esp_hid_host_master_20221027_163932_bd18096cb4/build/../main/esp_hid_gap.c:419: undefined reference to `esp_bt_gap_set_security_param'
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/boernsen/eclipse-workspace/esp_hid_host_master_20221027_163932_bd18096cb4/build/log/idf_py_stderr_output_42064 and /home/boernsen/eclipse-workspace/esp_hid_host_master_20221027_163932_bd18096cb4/build/log/idf_py_stdout_output_42064

More Information.

No response

BetterJincheng commented 2 years ago

@boernsen-development

static esp_err_t init_bt_gap(void)
{
    esp_err_t ret;
#if (CONFIG_BT_SSP_ENABLED == true)
    esp_bt_sp_param_t param_type = ESP_BT_SP_IOCAP_MODE;
    esp_bt_io_cap_t iocap = ESP_BT_IO_CAP_IO;
    esp_bt_gap_set_security_param(param_type, &iocap, sizeof(uint8_t));
#endif
    /*
     * Set default parameters for Legacy Pairing
     * Use fixed pin code
     */
    esp_bt_pin_type_t pin_type = ESP_BT_PIN_TYPE_VARIABLE;
    esp_bt_pin_code_t pin_code;
    esp_bt_gap_set_pin(pin_type, 0, pin_code);

    if ((ret = esp_bt_gap_register_callback(bt_gap_event_handler)) != ESP_OK) {
        ESP_LOGE(TAG, "esp_bt_gap_register_callback failed: %d", ret);
        return ret;
    }

    // Allow BT devices to connect back to us
    if ((ret = esp_bt_gap_set_scan_mode(ESP_BT_CONNECTABLE, ESP_BT_NON_DISCOVERABLE)) != ESP_OK) {
        ESP_LOGE(TAG, "esp_bt_gap_set_scan_mode failed: %d", ret);
        return ret;
    }
    return ret;
}

This can help.

boernsen-development commented 2 years ago

@BetterJincheng That worked, thanks a lot!