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

Rebuilding esp-idf libraries for Arduino #1531

Closed
HKGK opened this issue Jun 25, 2018 · 13 comments
Closed

Rebuilding esp-idf libraries for Arduino #1531

HKGK opened this issue Jun 25, 2018 · 13 comments

Comments

@HKGK
Copy link

HKGK commented Jun 25, 2018

I need to improve the TCP/WiFi throughput of my ESP32 Arduino project.

It would seem that I need to make some changes to the esp32/tools/sd/sdkconfig file.

The esp-idf libraries for Arduino are pre compiled.

How do I recompile these libraries to reflect any changes I make to sdkconfig?

Thanks

@lbernstone
Copy link
Contributor

#1142

@HKGK
Copy link
Author

HKGK commented Jun 26, 2018

Thanks! W

Would I only have to copy the libesp32.a back to my Arduino setup if I make TCP and WiFi settings changes? There seems to be a lot of other libraries in my Arduino esp sdk directory...

@lbernstone
Copy link
Contributor

You need to copy any libraries that you modify. That issue was regarding clock speed, which lives only in libesp32.a. You will need liblwip.a if you modify the stack settings. If you follow those instructions (and compile with the exact same esp-idf files as was used for the latest arduino-esp32), it will not hurt anything to copy the whole set.

@ifrew
Copy link

ifrew commented Jun 26, 2018

What's the hold up in getting the idf 3.0+ components into ardunio? Last idf update was over 3 months ago. Anybody know if @me-no-dev is still working on this project? Thanks for any info.

@ifrew
Copy link

ifrew commented Jun 28, 2018

Idf just updated yesterday..super!

@lbernstone
Copy link
Contributor

@ifrew what does your comment have to do with this issue? Please keep general bitching and moaning on Reddit.
@HKGK If this has solved your issue, please close it.

@HKGK
Copy link
Author

HKGK commented Jun 29, 2018

@lbernstone Thanks a lot, got it working. Great care required to synch the arduino and idf setups.

@HKGK HKGK closed this as completed Jun 29, 2018
@megazero1316
Copy link

hello , i am trying to rebuild the idf library but seems like i have some difficults understand how to do i refered to this issues :
1142 and 1723

and after i recompile and copy all lib*.a files from build folder, i get an error and can`t compile my code

i am trying to disable CONFIG_SW_COEXIST_ENABLE for some testing

Archiving built core (caching) in: C:\Users\Mohamed\AppData\Local\Temp\arduino_cache_864432\core\core_espressif_esp32_esp32_PSRAM_disabled,PartitionScheme_min_spiffs,FlashMode_qio,FlashFreq_80,FlashSize_4M,UploadSpeed_921600,DebugLevel_none_c9e2fc0cf67c87988654826a638c7a35.a
Linking everything together...
"C:\\Users\\Mohamed\\Documents\\Arduino\\hardware\\espressif\\esp32/tools/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc" -nostdlib "-LC:\\Users\\Mohamed\\Documents\\Arduino\\hardware\\espressif\\esp32/tools/sdk/lib" "-LC:\\Users\\Mohamed\\Documents\\Arduino\\hardware\\espressif\\esp32/tools/sdk/ld" -T esp32_out.ld -T esp32.common.ld -T esp32.rom.ld -T esp32.peripherals.ld -T esp32.rom.spiram_incompatible_fns.ld -u ld_include_panic_highint_hdl -u call_user_start_cpu0 -Wl,--gc-sections -Wl,-static -Wl,--undefined=uxTopUsedPriority -u __cxa_guard_dummy -u __cxx_fatal_exception -Wl,--start-group "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\sketch\\advanled-firmware-esp32.ino.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\WiFi\\ETH.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\WiFi\\WiFi.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\WiFi\\WiFiAP.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\WiFi\\WiFiClient.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\WiFi\\WiFiGeneric.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\WiFi\\WiFiMulti.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\WiFi\\WiFiSTA.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\WiFi\\WiFiScan.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\WiFi\\WiFiServer.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\WiFi\\WiFiUdp.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\ESPmDNS\\ESPmDNS.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\EEPROM\\EEPROM.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\async-mqtt-client-master\\AsyncMqttClient.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\async-mqtt-client-master\\AsyncMqttClient\\Packets\\ConnAckPacket.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\async-mqtt-client-master\\AsyncMqttClient\\Packets\\PingRespPacket.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\async-mqtt-client-master\\AsyncMqttClient\\Packets\\PubAckPacket.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\async-mqtt-client-master\\AsyncMqttClient\\Packets\\PubCompPacket.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\async-mqtt-client-master\\AsyncMqttClient\\Packets\\PubRecPacket.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\async-mqtt-client-master\\AsyncMqttClient\\Packets\\PubRelPacket.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\async-mqtt-client-master\\AsyncMqttClient\\Packets\\PublishPacket.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\async-mqtt-client-master\\AsyncMqttClient\\Packets\\SubAckPacket.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\async-mqtt-client-master\\AsyncMqttClient\\Packets\\UnsubAckPacket.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\AsyncTCP-master\\AsyncTCP.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\DNSServer\\DNSServer.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\ESPAsyncWebServer-master\\AsyncEventSource.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\ESPAsyncWebServer-master\\AsyncWebSocket.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\ESPAsyncWebServer-master\\SPIFFSEditor.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\ESPAsyncWebServer-master\\WebAuthentication.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\ESPAsyncWebServer-master\\WebHandlers.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\ESPAsyncWebServer-master\\WebRequest.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\ESPAsyncWebServer-master\\WebResponses.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\ESPAsyncWebServer-master\\WebServer.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\FS\\FS.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\FS\\vfs_api.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\HttpFOTA\\HttpFOTA.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\BLE\\BLE2902.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\BLE\\BLE2904.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\BLE\\BLEAddress.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\BLE\\BLEAdvertisedDevice.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\BLE\\BLEAdvertising.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\BLE\\BLEBeacon.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\BLE\\BLECharacteristic.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\BLE\\BLECharacteristicMap.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\BLE\\BLEClient.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\BLE\\BLEDescriptor.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\BLE\\BLEDescriptorMap.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\BLE\\BLEDevice.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\BLE\\BLEExceptions.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\BLE\\BLEHIDDevice.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\BLE\\BLERemoteCharacteristic.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\BLE\\BLERemoteDescriptor.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\BLE\\BLERemoteService.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\BLE\\BLEScan.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\BLE\\BLESecurity.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\BLE\\BLEServer.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\BLE\\BLEService.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\BLE\\BLEServiceMap.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\BLE\\BLEUUID.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\BLE\\BLEUtils.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\BLE\\BLEValue.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\BLE\\FreeRTOS.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\BLE\\GeneralUtils.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\HTTPClient\\HTTPClient.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\WiFiClientSecure\\WiFiClientSecure.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\WiFiClientSecure\\ssl_client.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639\\libraries\\Update\\Updater.cpp.o" "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639/arduino.ar" -lgcc -lopenssl -lbtdm_app -lfatfs -lwps -lcoexist -lwear_levelling -lesp_http_client -lhal -lnewlib -ldriver -lbootloader_support -lpp -lmesh -lsmartconfig -ljsmn -lwpa -lethernet -lphy -lapp_trace -lconsole -lulp -lwpa_supplicant -lfreertos -lbt -lmicro-ecc -lcxx -lxtensa-debug-module -lmdns -lvfs -lsoc -lcore -lsdmmc -lcoap -ltcpip_adapter -lc_nano -lesp-tls -lrtc -lspi_flash -lwpa2 -lesp32 -lapp_update -lnghttp -lspiffs -lespnow -lnvs_flash -lesp_adc_cal -llog -lsmartconfig_ack -lexpat -lm -lc -lheap -lmbedtls -llwip -lnet80211 -lpthread -ljson -lstdc++ -Wl,--end-group -Wl,-EL -o "C:\\Users\\Mohamed\\AppData\\Local\\Temp\\arduino_build_736639/advanled-firmware-esp32.ino.elf"
C:\Users\Mohamed\AppData\Local\Temp\arduino_build_736639/arduino.ar(esp32-hal-misc.c.o):(.literal.initArduino+0x8): undefined reference to `esp_log_level_set'

C:\Users\Mohamed\AppData\Local\Temp\arduino_build_736639/arduino.ar(esp32-hal-misc.c.o): In function `initArduino':

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32\cores\esp32/esp32-hal-misc.c:90: undefined reference to `esp_log_level_set'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32\cores\esp32/esp32-hal-misc.c:93: undefined reference to `esp_partition_find_first'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32\cores\esp32/esp32-hal-misc.c:95: undefined reference to `esp_partition_erase_range'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libesp32.a(system_api.o): In function `esp_efuse_mac_get_default':

C:/msys32/home/Mohamed/esp/esp-idf/components/esp32/system_api.c:170: undefined reference to `esp_log_write'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libesp32.a(system_api.o): In function `esp_read_mac':

C:/msys32/home/Mohamed/esp/esp-idf/components/esp32/system_api.c:177: undefined reference to `esp_log_write'

C:/msys32/home/Mohamed/esp/esp-idf/components/esp32/system_api.c:182: undefined reference to `esp_log_write'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libesp32.a(wifi_os_adapter.o):(.data.g_wifi_osi_funcs+0x138): undefined reference to `esp_log_write'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libesp32.a(phy_init.o): In function `load_cal_data_from_nvs_handle':

C:/msys32/home/Mohamed/esp/esp-idf/components/esp32/phy_init.c:401: undefined reference to `esp_log_write'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libesp32.a(phy_init.o):C:/msys32/home/Mohamed/esp/esp-idf/components/esp32/phy_init.c:401: more undefined references to `esp_log_write' follow

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libesp32.a(cpu_start.o):(.iram1.literal+0x20): undefined reference to `g_flash_guard_default_ops'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libesp32.a(cpu_start.o):(.iram1.literal+0x84): undefined reference to `spi_flash_init'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libesp32.a(cpu_start.o):(.iram1.literal+0x88): undefined reference to `spi_flash_guard_set'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libesp32.a(cpu_start.o): In function `start_cpu0_default':

C:/msys32/home/Mohamed/esp/esp-idf/components/esp32/cpu_start.c:353: undefined reference to `spi_flash_init'

C:/msys32/home/Mohamed/esp/esp-idf/components/esp32/cpu_start.c:355: undefined reference to `spi_flash_guard_set'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libpthread.a(pthread.o):(.literal.pthread_cancel+0xc): undefined reference to `esp_log_write'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libpthread.a(pthread.o): In function `pthread_cancel':

C:/msys32/home/Mohamed/esp/esp-idf/components/pthread/pthread.c:130: undefined reference to `esp_log_write'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libpthread.a(pthread.o): In function `pthread_once':

C:/msys32/home/Mohamed/esp/esp-idf/components/pthread/pthread.c:130: undefined reference to `esp_log_write'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libesp32.a(panic.o):(.literal._esp_error_check_failed+0x18): undefined reference to `spi_flash_cache_enabled'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libesp32.a(panic.o): In function `_esp_error_check_failed':

C:/msys32/home/Mohamed/esp/esp-idf/components/esp32/panic.c:662: undefined reference to `spi_flash_cache_enabled'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libdriver.a(rtc_module.o): In function `adc2_wifi_release':

C:/msys32/home/Mohamed/esp/esp-idf/components/driver/rtc_module.c:1896: undefined reference to `esp_log_write'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libdriver.a(timer.o): In function `timer_group_intr_enable':

C:/msys32/home/Mohamed/esp/esp-idf/components/driver/timer.c:254: undefined reference to `esp_log_write'

C:\Users\Mohamed\AppData\Local\Temp\arduino_build_736639\libraries\EEPROM\EEPROM.cpp.o:(.literal._ZN11EEPROMClass5beginEj+0x0): undefined reference to `esp_partition_find_first'

C:\Users\Mohamed\AppData\Local\Temp\arduino_build_736639\libraries\EEPROM\EEPROM.cpp.o:(.literal._ZN11EEPROMClass5beginEj+0x4): undefined reference to `esp_partition_read'

C:\Users\Mohamed\AppData\Local\Temp\arduino_build_736639\libraries\EEPROM\EEPROM.cpp.o:(.literal._ZN11EEPROMClass6commitEv+0x0): undefined reference to `esp_partition_erase_range'

C:\Users\Mohamed\AppData\Local\Temp\arduino_build_736639\libraries\EEPROM\EEPROM.cpp.o:(.literal._ZN11EEPROMClass6commitEv+0x4): undefined reference to `esp_partition_write'

C:\Users\Mohamed\AppData\Local\Temp\arduino_build_736639\libraries\EEPROM\EEPROM.cpp.o: In function `EEPROMClass::begin(unsigned int)':

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32\libraries\EEPROM/EEPROM.cpp:437: undefined reference to `esp_partition_find_first'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32\libraries\EEPROM/EEPROM.cpp:437: undefined reference to `esp_partition_read'

C:\Users\Mohamed\AppData\Local\Temp\arduino_build_736639\libraries\EEPROM\EEPROM.cpp.o: In function `EEPROMClass::commit()':

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32\libraries\EEPROM/EEPROM.cpp:437: undefined reference to `esp_partition_erase_range'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32\libraries\EEPROM/EEPROM.cpp:437: undefined reference to `esp_partition_write'

C:\Users\Mohamed\AppData\Local\Temp\arduino_build_736639\libraries\BLE\BLEBeacon.cpp.o:(.literal._ZN9BLEBeacon7setDataENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE+0xc): undefined reference to `esp_log_write'

C:\Users\Mohamed\AppData\Local\Temp\arduino_build_736639\libraries\BLE\BLEBeacon.cpp.o: In function `BLEBeacon::setData(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)':

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32\libraries\BLE\src/BLEBeacon.cpp:37: undefined reference to `esp_log_write'

C:\Users\Mohamed\AppData\Local\Temp\arduino_build_736639\libraries\BLE\FreeRTOS.cpp.o: In function `FreeRTOS::Semaphore::take(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)':

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32\libraries\BLE\src/FreeRTOS.cpp:187: undefined reference to `esp_log_write'

C:\Users\Mohamed\AppData\Local\Temp\arduino_build_736639\libraries\Update\Updater.cpp.o: In function `UpdateClass::begin(unsigned int, int)':

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32\libraries\Update\src/Updater.cpp:340: undefined reference to `esp_partition_find_first'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libtcpip_adapter.a(tcpip_adapter_lwip.o):(.literal.tcpip_adapter_init+0x18): undefined reference to `esp_log_write'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libtcpip_adapter.a(tcpip_adapter_lwip.o): In function `tcpip_adapter_init':

C:/msys32/home/Mohamed/esp/esp-idf/components/tcpip_adapter/tcpip_adapter_lwip.c:1191: undefined reference to `esp_log_write'

C:/msys32/home/Mohamed/esp/esp-idf/components/tcpip_adapter/tcpip_adapter_lwip.c:1191: undefined reference to `esp_log_write'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libtcpip_adapter.a(tcpip_adapter_lwip.o): In function `tcpip_adapter_start':

C:/msys32/home/Mohamed/esp/esp-idf/components/tcpip_adapter/tcpip_adapter_lwip.c:1191: undefined reference to `esp_log_write'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libtcpip_adapter.a(tcpip_adapter_lwip.o): In function `tcpip_adapter_stop':

C:/msys32/home/Mohamed/esp/esp-idf/components/tcpip_adapter/tcpip_adapter_lwip.c:1191: undefined reference to `esp_log_write'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libtcpip_adapter.a(tcpip_adapter_lwip.o):C:/msys32/home/Mohamed/esp/esp-idf/components/tcpip_adapter/tcpip_adapter_lwip.c:1191: more undefined references to `esp_log_write' follow

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libesp32.a(wifi_init.o):(.literal.s_set_default_wifi_log_level+0x4): undefined reference to `esp_log_level_set'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libesp32.a(wifi_init.o): In function `s_set_default_wifi_log_level':

C:/msys32/home/Mohamed/esp/esp-idf/components/esp32/wifi_init.c:36: undefined reference to `esp_log_level_set'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libesp32.a(event_default_handlers.o): In function `esp_system_event_debug':

C:/msys32/home/Mohamed/esp/esp-idf/components/esp32/event_default_handlers.c:136: undefined reference to `esp_log_write'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libesp32.a(event_default_handlers.o): In function `system_event_ap_stop_handle_default':

C:/msys32/home/Mohamed/esp/esp-idf/components/esp32/event_default_handlers.c:136: undefined reference to `esp_log_write'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libesp32.a(event_default_handlers.o): In function `system_event_ap_start_handle_default':

C:/msys32/home/Mohamed/esp/esp-idf/components/esp32/event_default_handlers.c:136: undefined reference to `esp_log_write'

C:/msys32/home/Mohamed/esp/esp-idf/components/esp32/event_default_handlers.c:136: undefined reference to `esp_log_write'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libesp32.a(event_default_handlers.o): In function `system_event_sta_got_ip_default':

C:/msys32/home/Mohamed/esp/esp-idf/components/esp32/event_default_handlers.c:136: undefined reference to `esp_log_write'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libesp32.a(event_default_handlers.o):C:/msys32/home/Mohamed/esp/esp-idf/components/esp32/event_default_handlers.c:136: more undefined references to `esp_log_write' follow

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libapp_update.a(esp_ota_ops.o):(.literal.get_ota_partition_count+0xc): undefined reference to `esp_partition_find_first'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libapp_update.a(esp_ota_ops.o):(.literal.rewrite_ota_seq+0x4): undefined reference to `esp_partition_erase_range'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libapp_update.a(esp_ota_ops.o):(.literal.rewrite_ota_seq+0x8): undefined reference to `esp_partition_write'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libapp_update.a(esp_ota_ops.o):(.literal.esp_rewrite_ota_data+0x8): undefined reference to `esp_partition_mmap'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libapp_update.a(esp_ota_ops.o):(.literal.esp_rewrite_ota_data+0xc): undefined reference to `spi_flash_munmap'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libapp_update.a(esp_ota_ops.o):(.literal.esp_ota_get_running_partition+0x10): undefined reference to `spi_flash_cache2phys'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libapp_update.a(esp_ota_ops.o):(.literal.esp_ota_get_running_partition+0x14): undefined reference to `esp_partition_find'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libapp_update.a(esp_ota_ops.o):(.literal.esp_ota_get_running_partition+0x18): undefined reference to `esp_partition_get'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libapp_update.a(esp_ota_ops.o):(.literal.esp_ota_get_running_partition+0x1c): undefined reference to `esp_partition_iterator_release'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libapp_update.a(esp_ota_ops.o):(.literal.esp_ota_get_running_partition+0x20): undefined reference to `esp_partition_next'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libapp_update.a(esp_ota_ops.o):(.literal.esp_ota_get_next_update_partition+0x8): undefined reference to `esp_partition_verify'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libapp_update.a(esp_ota_ops.o): In function `get_ota_partition_count':

C:/msys32/home/Mohamed/esp/esp-idf/components/app_update/esp_ota_ops.c:499: undefined reference to `esp_partition_find_first'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libapp_update.a(esp_ota_ops.o): In function `rewrite_ota_seq':

C:/msys32/home/Mohamed/esp/esp-idf/components/app_update/esp_ota_ops.c:499: undefined reference to `esp_partition_erase_range'

C:/msys32/home/Mohamed/esp/esp-idf/components/app_update/esp_ota_ops.c:499: undefined reference to `esp_partition_write'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libapp_update.a(esp_ota_ops.o): In function `esp_rewrite_ota_data':

C:/msys32/home/Mohamed/esp/esp-idf/components/app_update/esp_ota_ops.c:499: undefined reference to `esp_partition_find_first'

C:/msys32/home/Mohamed/esp/esp-idf/components/app_update/esp_ota_ops.c:499: undefined reference to `esp_partition_mmap'

C:/msys32/home/Mohamed/esp/esp-idf/components/app_update/esp_ota_ops.c:499: undefined reference to `spi_flash_munmap'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libapp_update.a(esp_ota_ops.o): In function `esp_ota_get_running_partition':

C:/msys32/home/Mohamed/esp/esp-idf/components/app_update/esp_ota_ops.c:499: undefined reference to `spi_flash_cache2phys'

C:/msys32/home/Mohamed/esp/esp-idf/components/app_update/esp_ota_ops.c:499: undefined reference to `esp_partition_find'

C:/msys32/home/Mohamed/esp/esp-idf/components/app_update/esp_ota_ops.c:499: undefined reference to `esp_partition_get'

C:/msys32/home/Mohamed/esp/esp-idf/components/app_update/esp_ota_ops.c:499: undefined reference to `esp_partition_iterator_release'

C:/msys32/home/Mohamed/esp/esp-idf/components/app_update/esp_ota_ops.c:499: undefined reference to `esp_partition_next'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libapp_update.a(esp_ota_ops.o): In function `esp_ota_set_boot_partition':

C:/msys32/home/Mohamed/esp/esp-idf/components/app_update/esp_ota_ops.c:499: undefined reference to `esp_partition_find_first'

C:/msys32/home/Mohamed/esp/esp-idf/components/app_update/esp_ota_ops.c:499: undefined reference to `esp_partition_erase_range'

C:/msys32/home/Mohamed/esp/esp-idf/components/app_update/esp_ota_ops.c:499: undefined reference to `esp_partition_find_first'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libapp_update.a(esp_ota_ops.o): In function `esp_ota_get_next_update_partition':

C:/msys32/home/Mohamed/esp/esp-idf/components/app_update/esp_ota_ops.c:534: undefined reference to `esp_partition_verify'

C:/msys32/home/Mohamed/esp/esp-idf/components/app_update/esp_ota_ops.c:553: undefined reference to `esp_partition_find_first'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libnvs_flash.a(nvs_api.o): In function `nvs_flash_init_partition':

C:/msys32/home/Mohamed/esp/esp-idf/components/nvs_flash/src/nvs_api.cpp:457: undefined reference to `esp_partition_find_first'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libnvs_flash.a(nvs_page.o):(.literal._ZN3nvs4Page10initializeEv+0x8): undefined reference to `spi_flash_write'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libnvs_flash.a(nvs_page.o):(.literal._ZNK3nvs4Page9readEntryEjRNS_4ItemE+0x0): undefined reference to `spi_flash_read'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libnvs_flash.a(nvs_page.o):(.literal._ZN3nvs4Page5eraseEv+0x0): undefined reference to `spi_flash_erase_sector'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libnvs_flash.a(nvs_page.o): In function `nvs::Page::initialize()':

C:/msys32/home/Mohamed/esp/esp-idf/components/nvs_flash/src/nvs_page.cpp:311: undefined reference to `spi_flash_write'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libnvs_flash.a(nvs_page.o): In function `nvs::Page::alterEntryState(unsigned int, nvs::Page::EntryState)':

C:/msys32/home/Mohamed/esp/esp-idf/components/nvs_flash/src/nvs_page.cpp:311: undefined reference to `spi_flash_write'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libnvs_flash.a(nvs_page.o): In function `nvs::Page::writeEntry(nvs::Item const&)':

C:/msys32/home/Mohamed/esp/esp-idf/components/nvs_flash/src/nvs_page.cpp:311: undefined reference to `spi_flash_write'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libnvs_flash.a(nvs_page.o): In function `nvs::Page::alterEntryRangeState(unsigned int, unsigned int, nvs::Page::EntryState)':

C:/msys32/home/Mohamed/esp/esp-idf/components/nvs_flash/src/nvs_page.cpp:311: undefined reference to `spi_flash_write'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libnvs_flash.a(nvs_page.o): In function `nvs::Page::writeEntryData(unsigned char const*, unsigned int)':

C:/msys32/home/Mohamed/esp/esp-idf/components/nvs_flash/src/nvs_page.cpp:311: undefined reference to `spi_flash_write'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libnvs_flash.a(nvs_page.o):C:/msys32/home/Mohamed/esp/esp-idf/components/nvs_flash/src/nvs_page.cpp:311: more undefined references to `spi_flash_write' follow

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libnvs_flash.a(nvs_page.o): In function `nvs::Page::readEntry(unsigned int, nvs::Item&) const':

C:/msys32/home/Mohamed/esp/esp-idf/components/nvs_flash/src/nvs_page.cpp:311: undefined reference to `spi_flash_read'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libnvs_flash.a(nvs_page.o): In function `nvs::Page::mLoadEntryTable()':

C:/msys32/home/Mohamed/esp/esp-idf/components/nvs_flash/src/nvs_page.cpp:443: undefined reference to `spi_flash_read'

C:/msys32/home/Mohamed/esp/esp-idf/components/nvs_flash/src/nvs_page.cpp:481: undefined reference to `spi_flash_read'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libnvs_flash.a(nvs_page.o): In function `nvs::Page::load(unsigned int)':

C:/msys32/home/Mohamed/esp/esp-idf/components/nvs_flash/src/nvs_page.cpp:40: undefined reference to `spi_flash_read'

C:/msys32/home/Mohamed/esp/esp-idf/components/nvs_flash/src/nvs_page.cpp:51: undefined reference to `spi_flash_read'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libnvs_flash.a(nvs_page.o): In function `nvs::Page::erase()':

C:/msys32/home/Mohamed/esp/esp-idf/components/nvs_flash/src/nvs_page.cpp:805: undefined reference to `spi_flash_erase_sector'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libsmartconfig_ack.a(smartconfig_ack.o): In function `sc_ack_send_task':

C:/msys32/home/Mohamed/esp/esp-idf/components/smartconfig_ack/smartconfig_ack.c:82: undefined reference to `esp_log_write'

C:/msys32/home/Mohamed/esp/esp-idf/components/smartconfig_ack/smartconfig_ack.c:111: undefined reference to `esp_log_write'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libsmartconfig_ack.a(smartconfig_ack.o): In function `sc_ack_send':

C:/msys32/home/Mohamed/esp/esp-idf/components/smartconfig_ack/smartconfig_ack.c:134: undefined reference to `esp_log_write'

C:/msys32/home/Mohamed/esp/esp-idf/components/smartconfig_ack/smartconfig_ack.c:140: undefined reference to `esp_log_write'

C:/msys32/home/Mohamed/esp/esp-idf/components/smartconfig_ack/smartconfig_ack.c:148: undefined reference to `esp_log_write'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libheap.a(heap_caps_init.o):(.literal.disable_mem_region+0x8): undefined reference to `soc_memory_region_count'

Multiple libraries were found for "WiFi.h"
 Used: C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32\libraries\WiFi
 Not used: C:\Program Files (x86)\Arduino\libraries\WiFi
C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libheap.a(heap_caps_init.o):(.literal.heap_caps_init+0x0): undefined reference to `soc_memory_regions'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libheap.a(heap_caps_init.o):(.literal.heap_caps_init+0x14): undefined reference to `soc_reserved_regions'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libheap.a(heap_caps_init.o):(.literal.heap_caps_init+0x18): undefined reference to `soc_reserved_region_count'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\libheap.a(heap_caps_init.o):(.literal.heap_caps_init+0x28): undefined reference to `soc_memory_types'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\liblwip.a(sys_arch.o):(.literal.sys_init+0x14): undefined reference to `esp_log_write'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\liblwip.a(sys_arch.o): In function `sys_init':

C:/msys32/home/Mohamed/esp/esp-idf/components/lwip/port/freertos/sys_arch.c:557: undefined reference to `esp_log_write'

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32/tools/sdk/lib\liblwip.a(sys_arch.o): In function `sys_thread_sem_init':

C:/msys32/home/Mohamed/esp/esp-idf/components/lwip/port/freertos/sys_arch.c:557: undefined reference to `esp_log_write'

C:/msys32/home/Mohamed/esp/esp-idf/components/lwip/port/freertos/sys_arch.c:557: undefined reference to `esp_log_write'

C:\Users\Mohamed\AppData\Local\Temp\arduino_build_736639/arduino.ar(Esp.cpp.o):(.literal._ZN8EspClass16flashEraseSectorEj+0x0): undefined reference to `spi_flash_erase_sector'

C:\Users\Mohamed\AppData\Local\Temp\arduino_build_736639/arduino.ar(Esp.cpp.o):(.literal._ZN8EspClass10flashWriteEjPjj+0x0): undefined reference to `spi_flash_write'

C:\Users\Mohamed\AppData\Local\Temp\arduino_build_736639/arduino.ar(Esp.cpp.o):(.literal._ZN8EspClass9flashReadEjPjj+0x0): undefined reference to `spi_flash_read'

C:\Users\Mohamed\AppData\Local\Temp\arduino_build_736639/arduino.ar(Esp.cpp.o): In function `EspClass::flashEraseSector(unsigned int)':

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32\cores\esp32/Esp.cpp:243: undefined reference to `spi_flash_erase_sector'

C:\Users\Mohamed\AppData\Local\Temp\arduino_build_736639/arduino.ar(Esp.cpp.o): In function `EspClass::flashWrite(unsigned int, unsigned int*, unsigned int)':

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32\cores\esp32/Esp.cpp:249: undefined reference to `spi_flash_write'

C:\Users\Mohamed\AppData\Local\Temp\arduino_build_736639/arduino.ar(Esp.cpp.o): In function `EspClass::flashRead(unsigned int, unsigned int*, unsigned int)':

C:\Users\Mohamed\Documents\Arduino\hardware\espressif\esp32\cores\esp32/Esp.cpp:254: undefined reference to `spi_flash_read'

@human890209
Copy link

human890209 commented Sep 9, 2018

@megazero1316 @lbernstone I got the same problem as megazero1316.
Hope an expert like lbernstone could help us.
---------edit----------
I'm using maybe the most updated ESP32 Arudino
I recover the old libs and just replace the libesp32.a, then the sketch compiled fine.
-------- edit 2 -----------
I used to search *.a with win10. and copy the result files into the lib folder.
I found that some *.a is from the bootloader folder's subfolders.
I delete these a files and copy the rest into the ESP32 Arduino's lib.
Everything works.

@Ben79543
Copy link
Contributor

Ben79543 commented May 8, 2020

Hi, I am also trying to do the same and all my rebuilt libraries do not work in arduino.
I need to try what human890209 suggested about the directory locations of .a files.
Meanwhile can someone confirm about issue 1142:
I checked git log in the arduino I have in the component directory and find several logs about idf version:

commit 1977370e6fc069e93ffd8818798fbfda27ae7d99 Author: Me No Dev <me-no-dev@users.noreply.github.com> Date: Mon Jan 20 22:07:04 2020 +0200 IDF release/v3.3 (#3339) * IDF release/v3.3 46b12a560 * fix build * IDF release/v3.3 367c3c09c

and also:
commit 0d163a1ce274cf389f8a263d66daaaa36b757d6f Author: Me No Dev <me-no-dev@users.noreply.github.com> Date: Thu Sep 5 11:08:45 2019 +0300 Update IDF 3.2 to 7dd492319 + WiFi fix (#3177)
and also:
commit 0acf19af8f5e9e459f9cc39142138d2f5c351146 Author: Me No Dev <me-no-dev@users.noreply.github.com> Date: Sun May 12 18:52:23 2019 +0300 Update IDF to v3.2 977854975 (#2771) * Update IDF to v3.2 977854975 * Update app_httpd.cpp
So I am confused, is this arduino at IDF 3.2 or 3.3. So far all my attempts were with an IDF 3.2 but maybe I am wrong? To what commit should I checkout?

@Ben79543
Copy link
Contributor

Ben79543 commented May 8, 2020

So I did a "git checkout" for esp-idf to the level of "Update IDF 3.2 to 7dd492319 + WiFi fix (#3177)"

After I recompile a "blink" project I got:
C:/esp/blink/components/arduino/libraries/WiFi/src/WiFiGeneric.h:31:39: fatal error: wifi_provisioning/manager.h: No such file or directory compilation terminated.

This seems to be related to commit in arduino component, which came AFTER "Update IDF 3.2 to 7dd492319"

commit 2c9b648502f1cfdbe2e9a1ef9c26582718633830 Author: sweetymhaiske <sweetymhaiske@gmail.com> Date: Thu Apr 16 02:07:55 2020 +0530 Add support of unified provisioning to Arduino 1. WiFiProv.ino sketch is added that allows arduino users to do provisioning via SoftAP or BLE. WiFi.beginProvision( ) API is designed for provisioning in Arduino. 2. In WiFiProv.h provisioning class is defined. 3. WiFiProv.cpp contains implementation for provisioning class. 4. README.md file is added which contains detail information for working.
What should I do?

@lbernstone
Copy link
Contributor

Don't hijack closed issues.

@Ben79543
Copy link
Contributor

Ben79543 commented May 8, 2020

Yes sorry I realised that: I started there as someone else had the same issue: #3971

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

6 participants