Skip to content

Undefined references when linking BLESecurity.cpp (version 3.3.0) #11800

@afpineda

Description

@afpineda

Board

ESP32S3 Dev module

Device Description

Genuine ESP32-S3-DevKitC-1

Hardware Configuration

No.

Version

v3.3.0

Type

Bug

IDE Name

Arduino IDE

Operating System

Windows 11

Flash frequency

QIO 80Mhz

PSRAM enabled

no

Upload speed

921600

Description

I'm using the released 3.3.0 core version.
Code making use of "BLESecurity.cpp" does not link as there are undefined references
to BLESecurity::m_initKey and BLESecurity::m_authReq.
Error messages below (in the "debug messages" section).

Appart from that:

  • version 3.3.0 is missing some #defines in the header file "BLESecurity.h". I noticed that the master branch already fixes that, but a patch should be released.

  • There is another strange compiler warning message (I always turn all warnings on):

    warning: #warning "This set of Touch APIs has been deprecated, please include 'driver/touch_sens.h' instead. if you want to keep using the old APIs and ignore this warning, you can enable 'Suppress legacy driver deprecated warning' option under 'Touch Configuration' menu in Kconfig" [-Wcpp]
    

Sketch

#include <BLEDevice.h>
#include <BLEUtils.h>
#include <BLEServer.h>
#include <BLEHIDDevice.h>
#include <BLESecurity.h>

#if defined(CONFIG_NIMBLE_ENABLED)
// Workaround for core version 3.3.0 missing these constants
#ifndef ESP_LE_AUTH_REQ_SC_MITM_BOND
#define ESP_LE_AUTH_REQ_SC_MITM_BOND (BLE_SM_PAIR_AUTHREQ_MITM | BLE_SM_PAIR_AUTHREQ_SC | BLE_SM_PAIR_AUTHREQ_BOND)
#endif
#ifndef ESP_BLE_ENC_KEY_MASK
#define ESP_BLE_ENC_KEY_MASK BLE_HS_KEY_DIST_ENC_KEY
#endif
#ifndef ESP_BLE_ID_KEY_MASK
#define ESP_BLE_ID_KEY_MASK  BLE_HS_KEY_DIST_ID_KEY
#endif
#endif

void setup() {
  BLEDevice::init("issue");
  BLEServer *pServer = BLEDevice::createServer();
  BLESecurity *pSecurity = new BLESecurity();
  pSecurity->setAuthenticationMode(ESP_LE_AUTH_REQ_SC_MITM_BOND);
  pSecurity->setInitEncryptionKey(ESP_BLE_ENC_KEY_MASK | ESP_BLE_ID_KEY_MASK);
}

void loop() {

}

Debug Message

FQBN: esp32:esp32:esp32s3
Using board 'esp32s3' from platform in folder: C:\Users\Zebollo\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.3.0
Using core 'esp32' from platform in folder: C:\Users\Zebollo\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.3.0

cmd /c if exist "D:\\Documentos\\Arduino\\IssueBLEsecurity\\IssueBLESecurity.ino\\partitions.csv" COPY /y "D:\\Documentos\\Arduino\\IssueBLEsecurity\\IssueBLESecurity.ino\\partitions.csv" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\partitions.csv"
cmd /c if not exist "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\partitions.csv" if exist "C:\\Users\\Zebollo\\AppData\\Local\\Arduino15\\packages\\esp32\\hardware\\esp32\\3.3.0\\variants\\esp32s3\\partitions.csv" COPY "C:\\Users\\Zebollo\\AppData\\Local\\Arduino15\\packages\\esp32\\hardware\\esp32\\3.3.0\\variants\\esp32s3\\partitions.csv" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\partitions.csv"
cmd /c if not exist "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\partitions.csv" COPY "C:\\Users\\Zebollo\\AppData\\Local\\Arduino15\\packages\\esp32\\hardware\\esp32\\3.3.0\\tools\\partitions\\default.csv" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\partitions.csv"
cmd /c IF EXIST "D:\\Documentos\\Arduino\\IssueBLEsecurity\\IssueBLESecurity.ino\\bootloader.bin" ( COPY /y "D:\\Documentos\\Arduino\\IssueBLEsecurity\\IssueBLESecurity.ino\\bootloader.bin" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\IssueBLESecurity.ino.ino.bootloader.bin" ) ELSE ( IF EXIST "C:\\Users\\Zebollo\\AppData\\Local\\Arduino15\\packages\\esp32\\hardware\\esp32\\3.3.0\\variants\\esp32s3\\bootloader.bin" ( COPY "C:\\Users\\Zebollo\\AppData\\Local\\Arduino15\\packages\\esp32\\hardware\\esp32\\3.3.0\\variants\\esp32s3\\bootloader.bin" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\IssueBLESecurity.ino.ino.bootloader.bin" ) ELSE ( "C:\\Users\\Zebollo\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esptool_py\\5.0.0\\esptool.exe" --chip esp32s3 elf2image --flash-mode dio --flash-freq 80m --flash-size 4MB -o "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\IssueBLESecurity.ino.ino.bootloader.bin" "C:\\Users\\Zebollo\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.5-b66b5448-v1\\esp32s3\\bin\\bootloader_qio_80m.elf" ) )
esptool v5.0.0
Creating ESP32S3 image...
Merged 2 ELF sections.
Successfully created ESP32S3 image.
cmd /c if exist "D:\\Documentos\\Arduino\\IssueBLEsecurity\\IssueBLESecurity.ino\\build_opt.h" COPY /y "D:\\Documentos\\Arduino\\IssueBLEsecurity\\IssueBLESecurity.ino\\build_opt.h" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\build_opt.h"
cmd /c if not exist "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\build_opt.h" type nul > "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\build_opt.h"
cmd /c type nul > "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246/file_opts"
cmd /c COPY /y "C:\\Users\\Zebollo\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.5-b66b5448-v1\\esp32s3\\sdkconfig" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\sdkconfig"
        1 archivo(s) copiado(s).
Detecting libraries used...
C:\Users\Zebollo\AppData\Local\Arduino15\packages\esp32\tools\esp-x32\2411/bin/xtensa-esp32s3-elf-g++ -c @C:\Users\Zebollo\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.5-b66b5448-v1\esp32s3/flags/cpp_flags -w -Os -Werror=return-type -w -x c++ -E -CC -DF_CPU=240000000L -DARDUINO=10607 -DARDUINO_ESP32S3_DEV -DARDUINO_ARCH_ESP32 -DARDUINO_BOARD="ESP32S3_DEV" -DARDUINO_VARIANT="esp32s3" -DARDUINO_PARTITION_default -DARDUINO_HOST_OS="windows" -DARDUINO_FQBN="esp32:esp32:esp32s3:UploadSpeed=921600,USBMode=hwcdc,CDCOnBoot=default,MSCOnBoot=default,DFUOnBoot=default,UploadMode=default,CPUFreq=240,FlashMode=qio,FlashSize=4M,PartitionScheme=default,DebugLevel=none,PSRAM=disabled,LoopCore=1,EventsCore=1,EraseFlash=none,JTAGAdapter=default,ZigbeeMode=default" -DESP32=ESP32 -DCORE_DEBUG_LEVEL=0 -DARDUINO_RUNNING_CORE=1 -DARDUINO_EVENT_RUNNING_CORE=1 -DARDUINO_USB_MODE=1 -DARDUINO_USB_CDC_ON_BOOT=0 -DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=0 @C:\Users\Zebollo\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.5-b66b5448-v1\esp32s3/flags/defines -ID:\Documentos\Arduino\IssueBLEsecurity\IssueBLESecurity.ino -iprefix C:\Users\Zebollo\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.5-b66b5448-v1\esp32s3/include/ @C:\Users\Zebollo\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.5-b66b5448-v1\esp32s3/flags/includes -IC:\Users\Zebollo\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.5-b66b5448-v1\esp32s3/qio_qspi/include -IC:\Users\Zebollo\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.3.0\cores\esp32 -IC:\Users\Zebollo\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.3.0\variants\esp32s3 @C:\Users\Zebollo\AppData\Local\arduino\sketches\EAB1899DAB3B935BA48BD4E4F89BD246/build_opt.h @C:\Users\Zebollo\AppData\Local\arduino\sketches\EAB1899DAB3B935BA48BD4E4F89BD246/file_opts C:\Users\Zebollo\AppData\Local\arduino\sketches\EAB1899DAB3B935BA48BD4E4F89BD246\sketch\IssueBLESecurity.ino.ino.cpp -o nul
Alternatives for BLEDevice.h: [[email protected]]
ResolveLibrary(BLEDevice.h)
  -> candidates: [[email protected]]

[[[[trimmed trace]]]

Generating function prototypes...
C:\Users\Zebollo\AppData\Local\Arduino15\packages\esp32\tools\esp-x32\2411/bin/xtensa-esp32s3-elf-g++ -c @C:\Users\Zebollo\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.5-b66b5448-v1\esp32s3/flags/cpp_flags -w -Os -Werror=return-type -w -x c++ -E -CC -DF_CPU=240000000L -DARDUINO=10607 -DARDUINO_ESP32S3_DEV -DARDUINO_ARCH_ESP32 -DARDUINO_BOARD="ESP32S3_DEV" -DARDUINO_VARIANT="esp32s3" -DARDUINO_PARTITION_default -DARDUINO_HOST_OS="windows" -DARDUINO_FQBN="esp32:esp32:esp32s3:UploadSpeed=921600,USBMode=hwcdc,CDCOnBoot=default,MSCOnBoot=default,DFUOnBoot=default,UploadMode=default,CPUFreq=240,FlashMode=qio,FlashSize=4M,PartitionScheme=default,DebugLevel=none,PSRAM=disabled,LoopCore=1,EventsCore=1,EraseFlash=none,JTAGAdapter=default,ZigbeeMode=default" -DESP32=ESP32 -DCORE_DEBUG_LEVEL=0 -DARDUINO_RUNNING_CORE=1 -DARDUINO_EVENT_RUNNING_CORE=1 -DARDUINO_USB_MODE=1 -DARDUINO_USB_CDC_ON_BOOT=0 -DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=0 @C:\Users\Zebollo\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.5-b66b5448-v1\esp32s3/flags/defines -ID:\Documentos\Arduino\IssueBLEsecurity\IssueBLESecurity.ino -iprefix C:\Users\Zebollo\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.5-b66b5448-v1\esp32s3/include/ @C:\Users\Zebollo\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.5-b66b5448-v1\esp32s3/flags/includes -IC:\Users\Zebollo\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.5-b66b5448-v1\esp32s3/qio_qspi/include -IC:\Users\Zebollo\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.3.0\cores\esp32 -IC:\Users\Zebollo\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.3.0\variants\esp32s3 -IC:\Users\Zebollo\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.3.0\libraries\BLE\src @C:\Users\Zebollo\AppData\Local\arduino\sketches\EAB1899DAB3B935BA48BD4E4F89BD246/build_opt.h @C:\Users\Zebollo\AppData\Local\arduino\sketches\EAB1899DAB3B935BA48BD4E4F89BD246/file_opts C:\Users\Zebollo\AppData\Local\arduino\sketches\EAB1899DAB3B935BA48BD4E4F89BD246\sketch\IssueBLESecurity.ino.ino.cpp -o F:\Temp\3084878397\sketch_merged.cpp
C:\Users\Zebollo\AppData\Local\Arduino15\packages\builtin\tools\ctags\5.8-arduino11/ctags -u --language-force=c++ -f - --c++-kinds=svpf --fields=KSTtzns --line-directives F:\Temp\3084878397\sketch_merged.cpp

Compiling sketch...
"C:\\Users\\Zebollo\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp-x32\\2411/bin/xtensa-esp32s3-elf-g++" -MMD -c "@C:\\Users\\Zebollo\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.5-b66b5448-v1\\esp32s3/flags/cpp_flags" -Wall -Wextra -Os -Werror=return-type -DF_CPU=240000000L -DARDUINO=10607 -DARDUINO_ESP32S3_DEV -DARDUINO_ARCH_ESP32 "-DARDUINO_BOARD=\"ESP32S3_DEV\"" "-DARDUINO_VARIANT=\"esp32s3\"" -DARDUINO_PARTITION_default "-DARDUINO_HOST_OS=\"windows\"" "-DARDUINO_FQBN=\"esp32:esp32:esp32s3:UploadSpeed=921600,USBMode=hwcdc,CDCOnBoot=default,MSCOnBoot=default,DFUOnBoot=default,UploadMode=default,CPUFreq=240,FlashMode=qio,FlashSize=4M,PartitionScheme=default,DebugLevel=none,PSRAM=disabled,LoopCore=1,EventsCore=1,EraseFlash=none,JTAGAdapter=default,ZigbeeMode=default\"" -DESP32=ESP32 -DCORE_DEBUG_LEVEL=0 -DARDUINO_RUNNING_CORE=1 -DARDUINO_EVENT_RUNNING_CORE=1 -DARDUINO_USB_MODE=1 -DARDUINO_USB_CDC_ON_BOOT=0 -DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=0 "@C:\\Users\\Zebollo\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.5-b66b5448-v1\\esp32s3/flags/defines" "-ID:\\Documentos\\Arduino\\IssueBLEsecurity\\IssueBLESecurity.ino" -iprefix "C:\\Users\\Zebollo\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.5-b66b5448-v1\\esp32s3/include/" "@C:\\Users\\Zebollo\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.5-b66b5448-v1\\esp32s3/flags/includes" "-IC:\\Users\\Zebollo\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.5-b66b5448-v1\\esp32s3/qio_qspi/include" "-IC:\\Users\\Zebollo\\AppData\\Local\\Arduino15\\packages\\esp32\\hardware\\esp32\\3.3.0\\cores\\esp32" "-IC:\\Users\\Zebollo\\AppData\\Local\\Arduino15\\packages\\esp32\\hardware\\esp32\\3.3.0\\variants\\esp32s3" "-IC:\\Users\\Zebollo\\AppData\\Local\\Arduino15\\packages\\esp32\\hardware\\esp32\\3.3.0\\libraries\\BLE\\src" "@C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246/build_opt.h" "@C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246/file_opts" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\sketch\\IssueBLESecurity.ino.ino.cpp" -o "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\sketch\\IssueBLESecurity.ino.ino.cpp.o"
D:\Documentos\Arduino\IssueBLEsecurity\IssueBLESecurity.ino\IssueBLESecurity.ino.ino: In function 'void setup()':
D:\Documentos\Arduino\IssueBLEsecurity\IssueBLESecurity.ino\IssueBLESecurity.ino.ino:23:14: warning: unused variable 'pServer' [-Wunused-variable]
   23 |   BLEServer *pServer = BLEDevice::createServer();
      |              ^~~~~~~
Compiling libraries...
Compiling library "BLE"
Compiling core...


[[[[trimmed trace]]]

cmd /c echo -DARDUINO_CORE_BUILD > "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246/file_opts"
"C:\\Users\\Zebollo\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp-x32\\2411/bin/xtensa-esp32s3-elf-gcc" -MMD -c "@C:\\Users\\Zebollo\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.5-b66b5448-v1\\esp32s3/flags/c_flags" -Wall -Wextra -Os -Werror=return-type -DF_CPU=240000000L -DARDUINO=10607 -DARDUINO_ESP32S3_DEV -DARDUINO_ARCH_ESP32 "-DARDUINO_BOARD=\"ESP32S3_DEV\"" "-DARDUINO_VARIANT=\"esp32s3\"" -DARDUINO_PARTITION_default "-DARDUINO_HOST_OS=\"windows\"" "-DARDUINO_FQBN=\"esp32:esp32:esp32s3:UploadSpeed=921600,USBMode=hwcdc,CDCOnBoot=default,MSCOnBoot=default,DFUOnBoot=default,UploadMode=default,CPUFreq=240,FlashMode=qio,FlashSize=4M,PartitionScheme=default,DebugLevel=none,PSRAM=disabled,LoopCore=1,EventsCore=1,EraseFlash=none,JTAGAdapter=default,ZigbeeMode=default\"" -DESP32=ESP32 -DCORE_DEBUG_LEVEL=0 -DARDUINO_RUNNING_CORE=1 -DARDUINO_EVENT_RUNNING_CORE=1 -DARDUINO_USB_MODE=1 -DARDUINO_USB_CDC_ON_BOOT=0 -DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=0 "@C:\\Users\\Zebollo\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.5-b66b5448-v1\\esp32s3/flags/defines" "-ID:\\Documentos\\Arduino\\IssueBLEsecurity\\IssueBLESecurity.ino" -iprefix "C:\\Users\\Zebollo\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.5-b66b5448-v1\\esp32s3/include/" "@C:\\Users\\Zebollo\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.5-b66b5448-v1\\esp32s3/flags/includes" "-IC:\\Users\\Zebollo\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.5-b66b5448-v1\\esp32s3/qio_qspi/include" "-IC:\\Users\\Zebollo\\AppData\\Local\\Arduino15\\packages\\esp32\\hardware\\esp32\\3.3.0\\cores\\esp32" "-IC:\\Users\\Zebollo\\AppData\\Local\\Arduino15\\packages\\esp32\\hardware\\esp32\\3.3.0\\variants\\esp32s3" "@C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246/build_opt.h" "@C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246/file_opts" "C:\\Users\\Zebollo\\AppData\\Local\\Arduino15\\packages\\esp32\\hardware\\esp32\\3.3.0\\cores\\esp32\\wiring_shift.c" -o "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\core\\wiring_shift.c.o"
In file included from C:\Users\Zebollo\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.3.0\cores\esp32\esp32-hal-touch.c:19:
C:\Users\Zebollo\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.5-b66b5448-v1\esp32s3/include/driver/touch_sensor/esp32s3/include/driver/touch_sensor.h:13:2: warning: #warning "This set of Touch APIs has been deprecated, please include 'driver/touch_sens.h' instead. if you want to keep using the old APIs and ignore this warning, you can enable 'Suppress legacy driver deprecated warning' option under 'Touch Configuration' menu in Kconfig" [-Wcpp]
   13 | #warning "This set of Touch APIs has been deprecated, \
      |  ^~~~~~~

[[[[trimmed trace]]]

Archiving built core (caching) in: C:\Users\Zebollo\AppData\Local\arduino\cores\4648dc5fce1cfa9674172209ea5b6d46\core.a
cmd /c type nul > "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246/file_opts"
Linking everything together...
"C:\\Users\\Zebollo\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp-x32\\2411/bin/xtensa-esp32s3-elf-g++" "-Wl,--Map=C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246/IssueBLESecurity.ino.ino.map" "-LC:\\Users\\Zebollo\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.5-b66b5448-v1\\esp32s3/lib" "-LC:\\Users\\Zebollo\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.5-b66b5448-v1\\esp32s3/ld" "-LC:\\Users\\Zebollo\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.5-b66b5448-v1\\esp32s3/qio_qspi" -Wl,--wrap=esp_panic_handler "@C:\\Users\\Zebollo\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.5-b66b5448-v1\\esp32s3/flags/ld_flags" "@C:\\Users\\Zebollo\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.5-b66b5448-v1\\esp32s3/flags/ld_scripts" -Wl,--start-group "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\sketch\\IssueBLESecurity.ino.ino.cpp.o" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\libraries\\BLE\\BLE2901.cpp.o" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\libraries\\BLE\\BLE2902.cpp.o" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\libraries\\BLE\\BLE2904.cpp.o" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\libraries\\BLE\\BLEAddress.cpp.o" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\libraries\\BLE\\BLEAdvertisedDevice.cpp.o" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\libraries\\BLE\\BLEAdvertising.cpp.o" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\libraries\\BLE\\BLEBeacon.cpp.o" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\libraries\\BLE\\BLECharacteristic.cpp.o" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\libraries\\BLE\\BLECharacteristicMap.cpp.o" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\libraries\\BLE\\BLEClient.cpp.o" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\libraries\\BLE\\BLEDescriptor.cpp.o" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\libraries\\BLE\\BLEDescriptorMap.cpp.o" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\libraries\\BLE\\BLEDevice.cpp.o" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\libraries\\BLE\\BLEEddystoneTLM.cpp.o" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\libraries\\BLE\\BLEEddystoneURL.cpp.o" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\libraries\\BLE\\BLEExceptions.cpp.o" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\libraries\\BLE\\BLEHIDDevice.cpp.o" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\libraries\\BLE\\BLERemoteCharacteristic.cpp.o" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\libraries\\BLE\\BLERemoteDescriptor.cpp.o" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\libraries\\BLE\\BLERemoteService.cpp.o" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\libraries\\BLE\\BLEScan.cpp.o" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\libraries\\BLE\\BLESecurity.cpp.o" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\libraries\\BLE\\BLEServer.cpp.o" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\libraries\\BLE\\BLEService.cpp.o" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\libraries\\BLE\\BLEServiceMap.cpp.o" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\libraries\\BLE\\BLEUUID.cpp.o" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\libraries\\BLE\\BLEUtils.cpp.o" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\libraries\\BLE\\BLEValue.cpp.o" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\libraries\\BLE\\FreeRTOS.cpp.o" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\libraries\\BLE\\GeneralUtils.cpp.o" "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246\\core\\core.a" "@C:\\Users\\Zebollo\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.5-b66b5448-v1\\esp32s3/flags/ld_libs" -Wl,--end-group -Wl,-EL -o "C:\\Users\\Zebollo\\AppData\\Local\\arduino\\sketches\\EAB1899DAB3B935BA48BD4E4F89BD246/IssueBLESecurity.ino.ino.elf"
C:/Users/Zebollo/AppData/Local/Arduino15/packages/esp32/tools/esp-x32/2411/bin/../lib/gcc/xtensa-esp-elf/14.2.0/../../../../xtensa-esp-elf/bin/ld.exe: C:\Users\Zebollo\AppData\Local\arduino\sketches\EAB1899DAB3B935BA48BD4E4F89BD246\libraries\BLE\BLESecurity.cpp.o:(.literal._ZN11BLESecurity20setInitEncryptionKeyEh+0x0): undefined reference to `BLESecurity::m_initKey'
C:/Users/Zebollo/AppData/Local/Arduino15/packages/esp32/tools/esp-x32/2411/bin/../lib/gcc/xtensa-esp-elf/14.2.0/../../../../xtensa-esp-elf/bin/ld.exe: C:\Users\Zebollo\AppData\Local\arduino\sketches\EAB1899DAB3B935BA48BD4E4F89BD246\libraries\BLE\BLESecurity.cpp.o:(.literal._ZN11BLESecurity21setAuthenticationModeEbbb+0x0): undefined reference to `BLESecurity::m_authReq'
collect2.exe: error: ld returned 1 exit status
Using library BLE at version 3.3.0 in folder: C:\Users\Zebollo\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.3.0\libraries\BLE 
exit status 1

Compilation error: exit status 1

Other Steps to Reproduce

Enable all compiler warnings

I have checked existing issues, online documentation and the Troubleshooting Guide

  • I confirm I have checked existing issues, online documentation and Troubleshooting guide.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions