Skip to content

BLEDevice fails to compile unless CONFIG_ARDUHAL_ESP_LOG defined #3209

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

Closed
william-ferguson-au opened this issue Sep 15, 2019 · 3 comments
Closed
Labels
Status: Stale Issue is stale stage (outdated/stuck)

Comments

@william-ferguson-au
Copy link
Contributor

Hardware:

Board: NA
Core Installation version: arduino-esp32 1.0.3, esp-idf 3.3
IDE name: CLion but I am building on the command line using CMake.
Flash Frequency: NA
PSRAM enabled: NA
Upload Speed: NA
Computer OS: Windows 10

Description:

I am trying to compile a project that uses arduino-esp32 as a component.
Intel i7, Windows 10, esp-idf v3.3
I am building using CMake.

When I execute
idf.py build
it fails to compile BLEDevice.cpp complaining about log_* not declared in this scope.

Sketch: (leave the backquotes for [code formatting]

//Change the code below by your sketch
#include <BLEDevice.h> // Required so we can create a BLE Server

Build output

[2/6] Building CXX object esp-idf/arduino-esp32/CMakeFiles/idf_component_arduino-esp32.dir/libraries/BLE/src/BLEDevice.cpp.obj FAILED: esp-idf/arduino-esp32/CMakeFiles/idf_component_arduino-esp32.dir/libraries/BLE/src/BLEDevice.cpp.obj "E:\Dev\Espressif\ESP-IDF Tools\tools\bin\xtensa-esp32-elf-g++.exe" -DESP_PLATFORM -DGCC_NOT_5_2_0=0 -DHAVE_CONFIG_H -DIDF_VER=\"v3.3-beta1-864-g91f29bef1\" -DMBEDTLS_CONFIG_FILE=\"mbedtls/esp_config.h\" -I../components/arduino-esp32/variants/esp32 -I../components/arduino-esp32/cores/esp32 -I../components/arduino-esp32/libraries/ArduinoOTA/src -I../components/arduino-esp32/libraries/AsyncUDP/src -I../components/arduino-esp32/libraries/AzureIoT/src -I../components/arduino-esp32/libraries/BLE/src -I../components/arduino-esp32/libraries/BluetoothSerial/src -I../components/arduino-esp32/libraries/DNSServer/src -I../components/arduino-esp32/libraries/EEPROM/src -I../components/arduino-esp32/libraries/ESP32/src -I../components/arduino-esp32/libraries/ESPmDNS/src -I../components/arduino-esp32/libraries/FFat/src -I../components/arduino-esp32/libraries/FS/src -I../components/arduino-esp32/libraries/HTTPClient/src -I../components/arduino-esp32/libraries/HTTPUpdate/src -I../components/arduino-esp32/libraries/NetBIOS/src -I../components/arduino-esp32/libraries/Preferences/src -I../components/arduino-esp32/libraries/SD_MMC/src -I../components/arduino-esp32/libraries/SD/src -I../components/arduino-esp32/libraries/SimpleBLE/src -I../components/arduino-esp32/libraries/SPIFFS/src -I../components/arduino-esp32/libraries/SPI/src -I../components/arduino-esp32/libraries/Ticker/src -I../components/arduino-esp32/libraries/Update/src -I../components/arduino-esp32/libraries/WebServer/src -I../components/arduino-esp32/libraries/WiFiClientSecure/src -I../components/arduino-esp32/libraries/WiFi/src -I../components/arduino-esp32/libraries/Wire/src -I../components/arduino-esp32/cores/esp32/libb64 -Iconfig -IE:/Dev/Espressif/esp-idf/components/spi_flash/include -IE:/Dev/Espressif/esp-idf/components/mbedtls/port/include -IE:/Dev/Espressif/esp-idf/components/mbedtls/mbedtls/include -IE:/Dev/Espressif/esp-idf/components/esp32/include -IE:/Dev/Espressif/esp-idf/components/driver/include -IE:/Dev/Espressif/esp-idf/components/esp_ringbuf/include -IE:/Dev/Espressif/esp-idf/components/tcpip_adapter/include -IE:/Dev/Espressif/esp-idf/components/lwip/include/apps -IE:/Dev/Espressif/esp-idf/components/lwip/lwip/src/include -IE:/Dev/Espressif/esp-idf/components/lwip/port/esp32/include -IE:/Dev/Espressif/esp-idf/components/lwip/port/esp32/include/arch -IE:/Dev/Espressif/esp-idf/components/lwip/include_compat -IE:/Dev/Espressif/esp-idf/components/vfs/include -IE:/Dev/Espressif/esp-idf/components/esp_event/include -IE:/Dev/Espressif/esp-idf/components/log/include -IE:/Dev/Espressif/esp-idf/components/efuse/include -IE:/Dev/Espressif/esp-idf/components/efuse/esp32/include -IE:/Dev/Espressif/esp-idf/components/newlib/platform_include -IE:/Dev/Espressif/esp-idf/components/newlib/include -IE:/Dev/Espressif/esp-idf/components/freertos/include -IE:/Dev/Espressif/esp-idf/components/app_trace/include -IE:/Dev/Espressif/esp-idf/components/heap/include -IE:/Dev/Espressif/esp-idf/components/soc/esp32/include -IE:/Dev/Espressif/esp-idf/components/soc/include -IE:/Dev/Espressif/esp-idf/components/mdns/include -IE:/Dev/Espressif/esp-idf/components/console -IE:/Dev/Espressif/esp-idf/components/ethernet/include -IE:/Dev/Espressif/esp-idf/components/fatfs/src -IE:/Dev/Espressif/esp-idf/components/wear_levelling/include -IE:/Dev/Espressif/esp-idf/components/sdmmc/include -IE:/Dev/Espressif/esp-idf/components/nvs_flash/include -IE:/Dev/Espressif/esp-idf/components/app_update/include -IE:/Dev/Espressif/esp-idf/components/bootloader_support/include -IE:/Dev/Espressif/esp-idf/components/spiffs/include -IE:/Dev/Espressif/esp-idf/components/openssl/include -IE:/Dev/Espressif/esp-idf/components/bt/include -IE:/Dev/Espressif/esp-idf/components/bt/bluedroid/api/include/api -mlongcalls -mlongcalls -Og -ffunction-sections -fdata-sections -fstrict-volatile-bitfields -nostdlib -Wall -Werror=all -Wno-error=unused-function -Wno-error=unused-but-set-variable -Wno-error=unused-variable -Wno-error=deprecated-declarations -Wextra -Wno-unused-parameter -Wno-sign-compare -ggdb -std=gnu++11 -fno-rtti -fexceptions -std=gnu++11 -MD -MT esp-idf/arduino-esp32/CMakeFiles/idf_component_arduino-esp32.dir/libraries/BLE/src/BLEDevice.cpp.obj -MF esp-idf\arduino-esp32\CMakeFiles\idf_component_arduino-esp32.dir\libraries\BLE\src\BLEDevice.cpp.obj.d -o esp-idf/arduino-esp32/CMakeFiles/idf_component_arduino-esp32.dir/libraries/BLE/src/BLEDevice.cpp.obj -c ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp: In static member function 'static BLEClient* BLEDevice::createClient()': ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp:66:25: error: 'log_v' was not declared in this scope log_v(">> createClient"); ^ ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp: In static member function 'static BLEServer* BLEDevice::createServer()': ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp:82:25: error: 'log_v' was not declared in this scope log_v(">> createServer"); ^ ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp: In static member function 'static void BLEDevice::gattServerEventHandler(esp_gatts_cb_event_t, esp_gatt_if_t, esp_ble_gatts_cb_param_t*)': ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp:108:55: error: 'log_d' was not declared in this scope BLEUtils::gattServerEventTypeToString(event).c_str()); ^ ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp: In static member function 'static void BLEDevice::gattClientEventHandler(esp_gattc_cb_event_t, esp_gatt_if_t, esp_ble_gattc_cb_param_t*)': ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp:154:65: error: 'log_d' was not declared in this scope gattc_if, BLEUtils::gattClientEventTypeToString(event).c_str()); ^ ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp: In static member function 'static void BLEDevice::gapEventHandler(esp_gap_ble_cb_event_t, esp_ble_gap_cb_param_t*)': ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp:197:36: error: 'log_i' was not declared in this scope log_i("ESP_GAP_BLE_OOB_REQ_EVT"); ^ ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp:253:32: error: 'log_d' was not declared in this scope log_d("ESP_GAP_BLE_KEY_EVT"); ^ ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp: In static member function 'static std::__cxx11::string BLEDevice::getValue(BLEAddress, BLEUUID, BLEUUID)': ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp:325:178: error: 'log_v' was not declared in this scope log_v(">> getValue: bdAddress: %s, serviceUUID: %s, characteristicUUID: %s", bdAddress.toString().c_str(), serviceUUID.toString().c_str(), characteristicUUID.toString().c_str()); ^ ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp: In static member function 'static void BLEDevice::init(std::__cxx11::string)': ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp:352:79: error: 'log_e' was not declared in this scope log_e("nvs_flash_init: rc=%d %s", errRc, GeneralUtils::errorToString(errRc)); ^ ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp:362:87: error: 'log_e' was not declared in this scope log_e("esp_bt_controller_init: rc=%d %s", errRc, GeneralUtils::errorToString(errRc)); ^ ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp:369:89: error: 'log_e' was not declared in this scope log_e("esp_bt_controller_enable: rc=%d %s", errRc, GeneralUtils::errorToString(errRc)); ^ ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp:385:84: error: 'log_e' was not declared in this scope log_e("esp_bluedroid_init: rc=%d %s", errRc, GeneralUtils::errorToString(errRc)); ^ ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp:393:86: error: 'log_e' was not declared in this scope log_e("esp_bluedroid_enable: rc=%d %s", errRc, GeneralUtils::errorToString(errRc)); ^ ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp:400:94: error: 'log_e' was not declared in this scope log_e("esp_ble_gap_register_callback: rc=%d %s", errRc, GeneralUtils::errorToString(errRc)); ^ ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp:407:96: error: 'log_e' was not declared in this scope log_e("esp_ble_gattc_register_callback: rc=%d %s", errRc, GeneralUtils::errorToString(errRc)); ^ ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp:415:96: error: 'log_e' was not declared in this scope log_e("esp_ble_gatts_register_callback: rc=%d %s", errRc, GeneralUtils::errorToString(errRc)); ^ ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp:422:92: error: 'log_e' was not declared in this scope log_e("esp_ble_gap_set_device_name: rc=%d %s", errRc, GeneralUtils::errorToString(errRc)); ^ ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp:430:95: error: 'log_e' was not declared in this scope log_e("esp_ble_gap_set_security_param: rc=%d %s", errRc, GeneralUtils::errorToString(errRc)); ^ ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp: In static member function 'static void BLEDevice::setPower(esp_power_level_t)': ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp:453:37: error: 'log_v' was not declared in this scope log_v(">> setPower: %d", powerLevel); ^ ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp:456:84: error: 'log_e' was not declared in this scope log_e("esp_ble_tx_power_set: rc=%d %s", errRc, GeneralUtils::errorToString(errRc)); ^ ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp: In static member function 'static void BLEDevice::setValue(BLEAddress, BLEUUID, BLEUUID, std::__cxx11::string)': ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp:469:178: error: 'log_v' was not declared in this scope log_v(">> setValue: bdAddress: %s, serviceUUID: %s, characteristicUUID: %s", bdAddress.toString().c_str(), serviceUUID.toString().c_str(), characteristicUUID.toString().c_str()); ^ ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp: In static member function 'static void BLEDevice::whiteListAdd(BLEAddress)': ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp:492:57: error: 'log_v' was not declared in this scope log_v(">> whiteListAdd: %s", address.toString().c_str()); ^ ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp:495:92: error: 'log_e' was not declared in this scope log_e("esp_ble_gap_update_whitelist: rc=%d %s", errRc, GeneralUtils::errorToString(errRc)); ^ ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp: In static member function 'static void BLEDevice::whiteListRemove(BLEAddress)': ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp:506:60: error: 'log_v' was not declared in this scope log_v(">> whiteListRemove: %s", address.toString().c_str()); ^ ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp:509:92: error: 'log_e' was not declared in this scope log_e("esp_ble_gap_update_whitelist: rc=%d %s", errRc, GeneralUtils::errorToString(errRc)); ^ ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp: In static member function 'static esp_err_t BLEDevice::setMTU(uint16_t)': ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp:535:33: error: 'log_v' was not declared in this scope log_v(">> setLocalMTU: %d", mtu); ^ ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp:540:45: error: 'log_e' was not declared in this scope log_e("can't set local mtu value: %d", mtu); ^ ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp: In static member function 'static BLEAdvertising* BLEDevice::getAdvertising()': ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp:560:29: error: 'log_i' was not declared in this scope log_i("create advertising"); ^ ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp:562:25: error: 'log_d' was not declared in this scope log_d("get advertising"); ^ ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp: In static member function 'static void BLEDevice::startAdvertising()': ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp:567:29: error: 'log_v' was not declared in this scope log_v(">> startAdvertising"); ^ ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp: In static member function 'static void BLEDevice::updatePeerDevice(void*, bool, uint16_t)': ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp:583:80: error: 'log_d' was not declared in this scope log_d("update conn_id: %d, GATT role: %s", conn_id, _client? "client":"server"); ^ ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp: In static member function 'static void BLEDevice::addPeerDevice(void*, bool, uint16_t)': ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp:599:77: error: 'log_i' was not declared in this scope log_i("add conn_id: %d, GATT role: %s", conn_id, _client? "client":"server"); ^ ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp: In static member function 'static void BLEDevice::removePeerDevice(uint16_t, bool)': ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp:610:70: error: 'log_i' was not declared in this scope log_i("remove: %d, GATT role %s", conn_id, _client?"client":"server"); ^ ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp: At global scope: ../components/arduino-esp32/libraries/BLE/src/BLEDevice.cpp:40:20: warning: 'LOG_TAG' defined but not used [-Wunused-variable] static const char* LOG_TAG = "BLEDevice"; ^ ninja: build stopped: subcommand failed. ninja failed with exit code 1

@william-ferguson-au
Copy link
Contributor Author

Fix provided : #3210

@stale
Copy link

stale bot commented Nov 14, 2019

[STALE_SET] This issue has been automatically marked as stale because it has not had recent activity. It will be closed in 14 days if no further activity occurs. Thank you for your contributions.

@stale stale bot added the Status: Stale Issue is stale stage (outdated/stuck) label Nov 14, 2019
@stale
Copy link

stale bot commented Nov 28, 2019

[STALE_DEL] This stale issue has been automatically closed. Thank you for your contributions.

@stale stale bot closed this as completed Nov 28, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Status: Stale Issue is stale stage (outdated/stuck)
Projects
None yet
Development

No branches or pull requests

1 participant