ESP8266 Library clashes between Crypto.h and CryptoAES_CBC.h

Hi,

I am developing a little project to remotely control a group of Tapo plugs via WiFi to power sequence our audio system (amplifiers and speakers). I have managed to communicate between my Arduino and a Tapo plug using the WiFiClient and ESP8266HTTPClient. This also uses the SHA1 and SHA256 hashing functions, so I am using the Crypto libraries. My include code looks like:

// https://rweather.github.io/arduinolibs/crypto.html
#include <Crypto.h>
#include <RNG.h>
#include <SHA1.h>
#include <SHA256.h>

So far so good...

The next phase of the operation requires the use of the AES128 CBC encryption and decryption algorithms.

The documentation for the Crypto library states that the CBC mode was deprecated to the "libraries/CryptoLegacy" by the author, but (my understanding) is that this Legacy code has not made it to the library I am using.

I found the CryptoAES_CBC library, so I am including that as follows:

// https://github.com/Obsttube/CryptoAES_CBC
#include <CryptoAES_CBC.h>
#include <AES.h>
#include <CBC.h>

Here I get my problem, in that I get the following errors:

In file included from /run/arduino/sketches/Test1ESP8266/Tapo.ino:69:0:
/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/CryptoAES_CBC.h:33:13: error: redefinition of 'template<class T> void clean(T&)'
 inline void clean(T &var)
             ^
In file included from /run/arduino/sketches/Test1ESP8266/Tapo.ino:63:0:
/var/run/arduino/directories-user/libraries/Crypto/src/Crypto.h:32:13: error: 'template<class T> void clean(T&)' previously declared here
 inline void clean(T &var)
             ^

It is true that the CryptoAES_CBC library does (indeed) have the same 'clean' as the Crypto library.

I thought I read that the clash had been resolved - but this was an old post and it looks like something is back again.

I followed some of the ideas suggested by the Arduino IDE AI - but those were, er, less than satisfactory...

Anyone any ideas what the most sensible way is to proceed from here?

Happy to post the verbose compiler output if that would help. Incidentally, I am using the cloud IDE.

Dave

Not sure, but I think you may need to comment out this:

#include <Crypto.h>

And then move this to the top of the list:

#include <CryptoAES_CBC.h>

Hi,

I will try that tomorrow. However, I think I have already tried this.

If memory serves me correctly, that fixed the 'clean' problem, but introduced a new problem with SHA1 and SHA256 that I am using.

However, when I try it tomorrow, I will post the exact errors that are spewed out.

Dave

This is the structure of my header files now:

// https://rweather.github.io/arduinolibs/crypto.html
#include <CryptoAES_CBC.h>
// #include <Crypto.h>
#include <RNG.h>
#include <SHA1.h>
#include <SHA256.h>

// https://github.com/Obsttube/CryptoAES_CBC
// #include <CryptoAES_CBC.h>
#include <AES.h>
#include <CBC.h>

This seems to compile but fail to link due to multiple definitions at the link (ld) stage:

FQBN: esp8266:esp8266:nodemcuv2:lvl=HTTP_CLIENT
Using board 'nodemcuv2' from platform in folder: /run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0
Using core 'esp8266' from platform in folder: /run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0

Detecting libraries used...
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/include -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/lwip2/include -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/libc/xtensa-lx106-elf/include -I/var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/core -c -w -Os -g -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=c++11 -ffunction-sections -fdata-sections -fno-exceptions -w -x c++ -E -CC -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DDEBUG_ESP_HTTP_CLIENT -DARDUINO=10607 -DARDUINO_ESP8266_NODEMCU -DARDUINO_ARCH_ESP8266 -DARDUINO_BOARD="ESP8266_NODEMCU" -DFLASHMODE_DIO -DESP8266 -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/cores/esp8266 -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/variants/nodemcu /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/sketch/Test1ESP8266.ino.cpp -o /dev/null
Alternatives for Adafruit_SSD1306.h: [EIS_INTERBOT@1.0.4 Adafruit SSD1306 Wemos Mini OLED@1.1.2 Adafruit SSD1306@2.5.15 EIS@0.0.1]
ResolveLibrary(Adafruit_SSD1306.h)
  -> candidates: [EIS_INTERBOT@1.0.4 Adafruit SSD1306 Wemos Mini OLED@1.1.2 Adafruit SSD1306@2.5.15 EIS@0.0.1]
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/include -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/lwip2/include -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/libc/xtensa-lx106-elf/include -I/var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/core -c -w -Os -g -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=c++11 -ffunction-sections -fdata-sections -fno-exceptions -w -x c++ -E -CC -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DDEBUG_ESP_HTTP_CLIENT -DARDUINO=10607 -DARDUINO_ESP8266_NODEMCU -DARDUINO_ARCH_ESP8266 -DARDUINO_BOARD="ESP8266_NODEMCU" -DFLASHMODE_DIO -DESP8266 -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/cores/esp8266 -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/variants/nodemcu -I/var/run/arduino/directories-user/libraries/Adafruit_SSD1306 /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/sketch/Test1ESP8266.ino.cpp -o /dev/null
Alternatives for Adafruit_GFX.h: [EIS_INTERBOT@1.0.4 Hanuman@1.4.0 DFRobot_RGBMatrix@1.0.1 Adafruit GFX Library@1.12.1 Adafruit GFX Library@1.10.7 EIS@0.0.1]
ResolveLibrary(Adafruit_GFX.h)
  -> candidates: [EIS_INTERBOT@1.0.4 Hanuman@1.4.0 DFRobot_RGBMatrix@1.0.1 Adafruit GFX Library@1.12.1 Adafruit GFX Library@1.10.7 EIS@0.0.1]
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/include -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/lwip2/include -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/libc/xtensa-lx106-elf/include -I/var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/core -c -w -Os -g -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=c++11 -ffunction-sections -fdata-sections -fno-exceptions -w -x c++ -E -CC -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DDEBUG_ESP_HTTP_CLIENT -DARDUINO=10607 -DARDUINO_ESP8266_NODEMCU -DARDUINO_ARCH_ESP8266 -DARDUINO_BOARD="ESP8266_NODEMCU" -DFLASHMODE_DIO -DESP8266 -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/cores/esp8266 -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/variants/nodemcu -I/var/run/arduino/directories-user/libraries/Adafruit_SSD1306 -I/var/run/arduino/custom-libraries/Adafruit GFX Library /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/sketch/Test1ESP8266.ino.cpp -o /dev/null
Alternatives for SPI.h: [EventEthernet@1.0.0 SPI@1.0]
ResolveLibrary(SPI.h)
  -> candidates: [EventEthernet@1.0.0 SPI@1.0]
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/include -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/lwip2/include -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/libc/xtensa-lx106-elf/include -I/var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/core -c -w -Os -g -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=c++11 -ffunction-sections -fdata-sections -fno-exceptions -w -x c++ -E -CC -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DDEBUG_ESP_HTTP_CLIENT -DARDUINO=10607 -DARDUINO_ESP8266_NODEMCU -DARDUINO_ARCH_ESP8266 -DARDUINO_BOARD="ESP8266_NODEMCU" -DFLASHMODE_DIO -DESP8266 -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/cores/esp8266 -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/variants/nodemcu -I/var/run/arduino/directories-user/libraries/Adafruit_SSD1306 -I/var/run/arduino/custom-libraries/Adafruit GFX Library -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/SPI /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/sketch/Test1ESP8266.ino.cpp -o /dev/null
Alternatives for Wire.h: [FlexWire@1.2.1 Wire@1.0]
ResolveLibrary(Wire.h)
  -> candidates: [FlexWire@1.2.1 Wire@1.0]
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/include -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/lwip2/include -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/libc/xtensa-lx106-elf/include -I/var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/core -c -w -Os -g -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=c++11 -ffunction-sections -fdata-sections -fno-exceptions -w -x c++ -E -CC -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DDEBUG_ESP_HTTP_CLIENT -DARDUINO=10607 -DARDUINO_ESP8266_NODEMCU -DARDUINO_ARCH_ESP8266 -DARDUINO_BOARD="ESP8266_NODEMCU" -DFLASHMODE_DIO -DESP8266 -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/cores/esp8266 -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/variants/nodemcu -I/var/run/arduino/directories-user/libraries/Adafruit_SSD1306 -I/var/run/arduino/custom-libraries/Adafruit GFX Library -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/SPI -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/Wire /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/sketch/Test1ESP8266.ino.cpp -o /dev/null
Alternatives for ESP8266WiFi.h: [ESP8266WiFi@1.0]
ResolveLibrary(ESP8266WiFi.h)
  -> candidates: [ESP8266WiFi@1.0]
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/include -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/lwip2/include -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/libc/xtensa-lx106-elf/include -I/var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/core -c -w -Os -g -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=c++11 -ffunction-sections -fdata-sections -fno-exceptions -w -x c++ -E -CC -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DDEBUG_ESP_HTTP_CLIENT -DARDUINO=10607 -DARDUINO_ESP8266_NODEMCU -DARDUINO_ARCH_ESP8266 -DARDUINO_BOARD="ESP8266_NODEMCU" -DFLASHMODE_DIO -DESP8266 -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/cores/esp8266 -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/variants/nodemcu -I/var/run/arduino/directories-user/libraries/Adafruit_SSD1306 -I/var/run/arduino/custom-libraries/Adafruit GFX Library -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/SPI -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/Wire -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/ESP8266WiFi/src /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/sketch/Test1ESP8266.ino.cpp -o /dev/null
Alternatives for CryptoAES_CBC.h: [CryptoAES_CBC@1.0.0]
ResolveLibrary(CryptoAES_CBC.h)
  -> candidates: [CryptoAES_CBC@1.0.0]
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/include -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/lwip2/include -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/libc/xtensa-lx106-elf/include -I/var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/core -c -w -Os -g -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=c++11 -ffunction-sections -fdata-sections -fno-exceptions -w -x c++ -E -CC -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DDEBUG_ESP_HTTP_CLIENT -DARDUINO=10607 -DARDUINO_ESP8266_NODEMCU -DARDUINO_ARCH_ESP8266 -DARDUINO_BOARD="ESP8266_NODEMCU" -DFLASHMODE_DIO -DESP8266 -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/cores/esp8266 -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/variants/nodemcu -I/var/run/arduino/directories-user/libraries/Adafruit_SSD1306 -I/var/run/arduino/custom-libraries/Adafruit GFX Library -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/SPI -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/Wire -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/ESP8266WiFi/src -I/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/sketch/Test1ESP8266.ino.cpp -o /dev/null
Alternatives for RNG.h: [Crypto@0.4.0 Crypto@0.4.0 CC-Lantern@1.4.3]
ResolveLibrary(RNG.h)
  -> candidates: [Crypto@0.4.0 Crypto@0.4.0 CC-Lantern@1.4.3]
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/include -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/lwip2/include -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/libc/xtensa-lx106-elf/include -I/var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/core -c -w -Os -g -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=c++11 -ffunction-sections -fdata-sections -fno-exceptions -w -x c++ -E -CC -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DDEBUG_ESP_HTTP_CLIENT -DARDUINO=10607 -DARDUINO_ESP8266_NODEMCU -DARDUINO_ARCH_ESP8266 -DARDUINO_BOARD="ESP8266_NODEMCU" -DFLASHMODE_DIO -DESP8266 -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/cores/esp8266 -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/variants/nodemcu -I/var/run/arduino/directories-user/libraries/Adafruit_SSD1306 -I/var/run/arduino/custom-libraries/Adafruit GFX Library -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/SPI -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/Wire -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/ESP8266WiFi/src -I/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src -I/var/run/arduino/custom-libraries/Crypto/src /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/sketch/Test1ESP8266.ino.cpp -o /dev/null
Alternatives for SHA1.h: [MySQL Query Client@1.0.2 ESP8266 Microgear@1.2.4 ArduinoBearSSL@1.7.6]
ResolveLibrary(SHA1.h)
  -> candidates: [MySQL Query Client@1.0.2 ESP8266 Microgear@1.2.4 ArduinoBearSSL@1.7.6]
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/include -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/lwip2/include -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/libc/xtensa-lx106-elf/include -I/var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/core -c -w -Os -g -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=c++11 -ffunction-sections -fdata-sections -fno-exceptions -w -x c++ -E -CC -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DDEBUG_ESP_HTTP_CLIENT -DARDUINO=10607 -DARDUINO_ESP8266_NODEMCU -DARDUINO_ARCH_ESP8266 -DARDUINO_BOARD="ESP8266_NODEMCU" -DFLASHMODE_DIO -DESP8266 -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/cores/esp8266 -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/variants/nodemcu -I/var/run/arduino/directories-user/libraries/Adafruit_SSD1306 -I/var/run/arduino/custom-libraries/Adafruit GFX Library -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/SPI -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/Wire -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/ESP8266WiFi/src -I/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src -I/var/run/arduino/custom-libraries/Crypto/src -I/var/run/arduino/directories-user/libraries/ESP8266_Microgear /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/sketch/Test1ESP8266.ino.cpp -o /dev/null
Alternatives for arduino_base64.hpp: [base64_encode@2.0.6]
ResolveLibrary(arduino_base64.hpp)
  -> candidates: [base64_encode@2.0.6]
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/include -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/lwip2/include -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/libc/xtensa-lx106-elf/include -I/var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/core -c -w -Os -g -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=c++11 -ffunction-sections -fdata-sections -fno-exceptions -w -x c++ -E -CC -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DDEBUG_ESP_HTTP_CLIENT -DARDUINO=10607 -DARDUINO_ESP8266_NODEMCU -DARDUINO_ARCH_ESP8266 -DARDUINO_BOARD="ESP8266_NODEMCU" -DFLASHMODE_DIO -DESP8266 -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/cores/esp8266 -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/variants/nodemcu -I/var/run/arduino/directories-user/libraries/Adafruit_SSD1306 -I/var/run/arduino/custom-libraries/Adafruit GFX Library -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/SPI -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/Wire -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/ESP8266WiFi/src -I/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src -I/var/run/arduino/custom-libraries/Crypto/src -I/var/run/arduino/directories-user/libraries/ESP8266_Microgear -I/var/run/arduino/directories-user/libraries/base64_encode/src /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/sketch/Test1ESP8266.ino.cpp -o /dev/null
Alternatives for Arduino_JSON.h: [Arduino_JSON@0.2.0 MotorGo_Mini_Driver@1.1.0]
ResolveLibrary(Arduino_JSON.h)
  -> candidates: [Arduino_JSON@0.2.0 MotorGo_Mini_Driver@1.1.0]
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/include -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/lwip2/include -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/libc/xtensa-lx106-elf/include -I/var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/core -c -w -Os -g -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=c++11 -ffunction-sections -fdata-sections -fno-exceptions -w -x c++ -E -CC -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DDEBUG_ESP_HTTP_CLIENT -DARDUINO=10607 -DARDUINO_ESP8266_NODEMCU -DARDUINO_ARCH_ESP8266 -DARDUINO_BOARD="ESP8266_NODEMCU" -DFLASHMODE_DIO -DESP8266 -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/cores/esp8266 -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/variants/nodemcu -I/var/run/arduino/directories-user/libraries/Adafruit_SSD1306 -I/var/run/arduino/custom-libraries/Adafruit GFX Library -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/SPI -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/Wire -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/ESP8266WiFi/src -I/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src -I/var/run/arduino/custom-libraries/Crypto/src -I/var/run/arduino/directories-user/libraries/ESP8266_Microgear -I/var/run/arduino/directories-user/libraries/base64_encode/src -I/var/run/arduino/directories-user/libraries/Arduino_JSON/src /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/sketch/Test1ESP8266.ino.cpp -o /dev/null
Alternatives for ESP8266HTTPClient.h: [ESP8266HTTPClient for esp8266@1.2 ESP8266HTTPClient@1.2]
ResolveLibrary(ESP8266HTTPClient.h)
  -> candidates: [ESP8266HTTPClient for esp8266@1.2 ESP8266HTTPClient@1.2]
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/include -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/lwip2/include -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/libc/xtensa-lx106-elf/include -I/var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/core -c -w -Os -g -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=c++11 -ffunction-sections -fdata-sections -fno-exceptions -w -x c++ -E -CC -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DDEBUG_ESP_HTTP_CLIENT -DARDUINO=10607 -DARDUINO_ESP8266_NODEMCU -DARDUINO_ARCH_ESP8266 -DARDUINO_BOARD="ESP8266_NODEMCU" -DFLASHMODE_DIO -DESP8266 -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/cores/esp8266 -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/variants/nodemcu -I/var/run/arduino/directories-user/libraries/Adafruit_SSD1306 -I/var/run/arduino/custom-libraries/Adafruit GFX Library -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/SPI -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/Wire -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/ESP8266WiFi/src -I/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src -I/var/run/arduino/custom-libraries/Crypto/src -I/var/run/arduino/directories-user/libraries/ESP8266_Microgear -I/var/run/arduino/directories-user/libraries/base64_encode/src -I/var/run/arduino/directories-user/libraries/Arduino_JSON/src -I/var/run/arduino/custom-libraries/ESP8266HTTPClient for esp8266/src /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/sketch/Test1ESP8266.ino.cpp -o /dev/null
Using cached library dependencies for file: /var/run/arduino/directories-user/libraries/Adafruit_SSD1306/Adafruit_SSD1306.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Adafruit GFX Library/Adafruit_GFX.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Adafruit GFX Library/Adafruit_GrayOLED.cpp
Alternatives for Adafruit_I2CDevice.h: [EIS_INTERBOT@1.0.4 Adafruit BusIO@1.17.2 VEGAIoT_BusIO@1.0.0 EIS@0.0.1]
ResolveLibrary(Adafruit_I2CDevice.h)
  -> candidates: [EIS_INTERBOT@1.0.4 Adafruit BusIO@1.17.2 VEGAIoT_BusIO@1.0.0 EIS@0.0.1]
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Adafruit GFX Library/Adafruit_SPITFT.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Adafruit GFX Library/glcdfont.c
Using cached library dependencies for file: /run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/SPI/SPI.cpp
Using cached library dependencies for file: /run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/Wire/Wire.cpp
Using cached library dependencies for file: /run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/ESP8266WiFi/src/BearSSLHelpers.cpp
Using cached library dependencies for file: /run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/ESP8266WiFi/src/CertStoreBearSSL.cpp
Using cached library dependencies for file: /run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/ESP8266WiFi/src/ESP8266WiFi.cpp
Using cached library dependencies for file: /run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/ESP8266WiFi/src/ESP8266WiFiAP.cpp
Using cached library dependencies for file: /run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/ESP8266WiFi/src/ESP8266WiFiGeneric.cpp
Using cached library dependencies for file: /run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/ESP8266WiFi/src/ESP8266WiFiMulti.cpp
Using cached library dependencies for file: /run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/ESP8266WiFi/src/ESP8266WiFiSTA-WPS.cpp
Using cached library dependencies for file: /run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/ESP8266WiFi/src/ESP8266WiFiSTA.cpp
Using cached library dependencies for file: /run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/ESP8266WiFi/src/ESP8266WiFiScan.cpp
Using cached library dependencies for file: /run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/ESP8266WiFi/src/WiFiClient.cpp
Using cached library dependencies for file: /run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/ESP8266WiFi/src/WiFiClientSecureAxTLS.cpp
Using cached library dependencies for file: /run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/ESP8266WiFi/src/WiFiClientSecureBearSSL.cpp
Using cached library dependencies for file: /run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/ESP8266WiFi/src/WiFiServer.cpp
Using cached library dependencies for file: /run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/ESP8266WiFi/src/WiFiServerSecureAxTLS.cpp
Using cached library dependencies for file: /run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/ESP8266WiFi/src/WiFiServerSecureBearSSL.cpp
Using cached library dependencies for file: /run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/ESP8266WiFi/src/WiFiUdp.cpp
Using cached library dependencies for file: /var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES128.cpp
Using cached library dependencies for file: /var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES192.cpp
Using cached library dependencies for file: /var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES256.cpp
Using cached library dependencies for file: /var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AESCommon.cpp
Using cached library dependencies for file: /var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AESEsp32.cpp
Using cached library dependencies for file: /var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/BlockCipher.cpp
Using cached library dependencies for file: /var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/CBC.cpp
Using cached library dependencies for file: /var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/Cipher.cpp
Using cached library dependencies for file: /var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/CryptoAES_CBC.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Crypto/src/AES128.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Crypto/src/AES192.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Crypto/src/AES256.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Crypto/src/AESCommon.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Crypto/src/AESEsp32.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Crypto/src/AuthenticatedCipher.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Crypto/src/BLAKE2b.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Crypto/src/BLAKE2s.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Crypto/src/BigNumberUtil.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Crypto/src/BlockCipher.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Crypto/src/CTR.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Crypto/src/ChaCha.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Crypto/src/ChaChaPoly.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Crypto/src/Cipher.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Crypto/src/Crypto.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Crypto/src/EAX.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Crypto/src/Ed25519.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Crypto/src/GCM.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Crypto/src/GF128.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Crypto/src/GHASH.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Crypto/src/HKDF.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Crypto/src/Hash.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Crypto/src/KeccakCore.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Crypto/src/NoiseSource.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Crypto/src/OMAC.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Crypto/src/P521.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Crypto/src/Poly1305.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Crypto/src/RNG.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Crypto/src/SHA224.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Crypto/src/SHA256.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Crypto/src/SHA3.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Crypto/src/SHA384.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Crypto/src/SHA512.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Crypto/src/SHAKE.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Crypto/src/XOF.cpp
Using cached library dependencies for file: /var/run/arduino/custom-libraries/Crypto/src/XTS.cpp
Using cached library dependencies for file: /var/run/arduino/directories-user/libraries/ESP8266_Microgear/AuthClient.cpp
Using cached library dependencies for file: /var/run/arduino/directories-user/libraries/ESP8266_Microgear/MicroGear.cpp
Alternatives for EEPROM.h: [Hello Drum@0.7.7 ATMAC_EEPROM@1.0.0 arduino-NVM@0.9.1 EEPROM@1.0]
ResolveLibrary(EEPROM.h)
  -> candidates: [Hello Drum@0.7.7 ATMAC_EEPROM@1.0.0 arduino-NVM@0.9.1 EEPROM@1.0]
Using cached library dependencies for file: /var/run/arduino/directories-user/libraries/ESP8266_Microgear/PubSubClient.cpp
Using cached library dependencies for file: /var/run/arduino/directories-user/libraries/ESP8266_Microgear/SHA1.cpp
Using cached library dependencies for file: /var/run/arduino/directories-user/libraries/base64_encode/src/main.cpp
Using cached library dependencies for file: /var/run/arduino/directories-user/libraries/Arduino_JSON/src/JSON.cpp
Using cached library dependencies for file: /var/run/arduino/directories-user/libraries/Arduino_JSON/src/JSONVar.cpp
Using cached library dependencies for file: /var/run/arduino/directories-user/libraries/Arduino_JSON/src/cjson/cJSON.c
Using cached library dependencies for file: /var/run/arduino/custom-libraries/ESP8266HTTPClient for esp8266/src/ESP8266HTTPClient.cpp
Using cached library dependencies for file: /var/run/arduino/directories-user/libraries/Adafruit_BusIO/Adafruit_BusIO_Register.cpp
Using cached library dependencies for file: /var/run/arduino/directories-user/libraries/Adafruit_BusIO/Adafruit_GenericDevice.cpp
Using cached library dependencies for file: /var/run/arduino/directories-user/libraries/Adafruit_BusIO/Adafruit_I2CDevice.cpp
Using cached library dependencies for file: /var/run/arduino/directories-user/libraries/Adafruit_BusIO/Adafruit_SPIDevice.cpp
Using cached library dependencies for file: /run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/EEPROM/EEPROM.cpp
Generating function prototypes...
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/include -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/lwip2/include -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/libc/xtensa-lx106-elf/include -I/var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/core -c -w -Os -g -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=c++11 -ffunction-sections -fdata-sections -fno-exceptions -w -x c++ -E -CC -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DDEBUG_ESP_HTTP_CLIENT -DARDUINO=10607 -DARDUINO_ESP8266_NODEMCU -DARDUINO_ARCH_ESP8266 -DARDUINO_BOARD="ESP8266_NODEMCU" -DFLASHMODE_DIO -DESP8266 -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/cores/esp8266 -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/variants/nodemcu -I/var/run/arduino/directories-user/libraries/Adafruit_SSD1306 -I/var/run/arduino/custom-libraries/Adafruit GFX Library -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/SPI -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/Wire -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/ESP8266WiFi/src -I/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src -I/var/run/arduino/custom-libraries/Crypto/src -I/var/run/arduino/directories-user/libraries/ESP8266_Microgear -I/var/run/arduino/directories-user/libraries/base64_encode/src -I/var/run/arduino/directories-user/libraries/Arduino_JSON/src -I/var/run/arduino/custom-libraries/ESP8266HTTPClient for esp8266/src -I/var/run/arduino/directories-user/libraries/Adafruit_BusIO -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/EEPROM /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/sketch/Test1ESP8266.ino.cpp -o /tmp/827436038/sketch_merged.cpp
/run/arduino/directories-data/packages/builtin/tools/ctags/5.8-arduino11/ctags -u --language-force=c++ -f - --c++-kinds=svpf --fields=KSTtzns --line-directives /tmp/827436038/sketch_merged.cpp

Compiling sketch...
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/include -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/lwip2/include -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/libc/xtensa-lx106-elf/include -I/var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/core -c -w -Os -g -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=c++11 -MMD -ffunction-sections -fdata-sections -fno-exceptions -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DDEBUG_ESP_HTTP_CLIENT -DARDUINO=10607 -DARDUINO_ESP8266_NODEMCU -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU\"" -DFLASHMODE_DIO -DESP8266 -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/cores/esp8266 -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/variants/nodemcu -I/var/run/arduino/directories-user/libraries/Adafruit_SSD1306 "-I/var/run/arduino/custom-libraries/Adafruit GFX Library" -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/SPI -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/Wire -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/ESP8266WiFi/src -I/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src -I/var/run/arduino/custom-libraries/Crypto/src -I/var/run/arduino/directories-user/libraries/ESP8266_Microgear -I/var/run/arduino/directories-user/libraries/base64_encode/src -I/var/run/arduino/directories-user/libraries/Arduino_JSON/src "-I/var/run/arduino/custom-libraries/ESP8266HTTPClient for esp8266/src" -I/var/run/arduino/directories-user/libraries/Adafruit_BusIO -I/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/EEPROM /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/sketch/Test1ESP8266.ino.cpp -o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/sketch/Test1ESP8266.ino.cpp.o
Compiling libraries...
Compiling library "Adafruit SSD1306"
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Adafruit_SSD1306/Adafruit_SSD1306.cpp.o
Compiling library "Adafruit GFX Library"
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Adafruit GFX Library/glcdfont.c.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Adafruit GFX Library/Adafruit_GFX.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Adafruit GFX Library/Adafruit_GrayOLED.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Adafruit GFX Library/Adafruit_SPITFT.cpp.o
Compiling library "SPI"
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/SPI/SPI.cpp.o
Compiling library "Wire"
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Wire/Wire.cpp.o
Compiling library "ESP8266WiFi"
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/ESP8266WiFi/BearSSLHelpers.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/ESP8266WiFi/ESP8266WiFi.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/ESP8266WiFi/CertStoreBearSSL.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/ESP8266WiFi/ESP8266WiFiMulti.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/ESP8266WiFi/ESP8266WiFiSTA.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/ESP8266WiFi/ESP8266WiFiAP.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/ESP8266WiFi/ESP8266WiFiGeneric.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/ESP8266WiFi/ESP8266WiFiScan.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/ESP8266WiFi/ESP8266WiFiSTA-WPS.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/ESP8266WiFi/WiFiClientSecureAxTLS.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/ESP8266WiFi/WiFiClient.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/ESP8266WiFi/WiFiClientSecureBearSSL.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/ESP8266WiFi/WiFiServer.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/ESP8266WiFi/WiFiServerSecureAxTLS.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/ESP8266WiFi/WiFiServerSecureBearSSL.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/ESP8266WiFi/WiFiUdp.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/ESP8266WiFi/ESP8266WiFi.a
Compiling library "CryptoAES_CBC"
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/Cipher.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/BlockCipher.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES128.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES192.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/CBC.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AESEsp32.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES256.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AESCommon.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/CryptoAES_CBC.cpp.o
Compiling library "Crypto"
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES128.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AuthenticatedCipher.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES192.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AESCommon.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/BLAKE2s.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES256.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AESEsp32.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/BLAKE2b.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/BlockCipher.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/BigNumberUtil.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/ChaChaPoly.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/ChaCha.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/Cipher.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/EAX.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/CTR.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/Hash.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/GCM.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/Ed25519.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/HKDF.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/GHASH.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/KeccakCore.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/NoiseSource.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/GF128.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/OMAC.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/Crypto.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/Poly1305.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/SHA224.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/P521.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/RNG.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/SHA256.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/SHA3.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/SHA512.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/SHA384.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/XOF.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/SHAKE.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/XTS.cpp.o
Compiling library "ESP8266 Microgear"
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/ESP8266_Microgear/SHA1.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/ESP8266_Microgear/MicroGear.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/ESP8266_Microgear/PubSubClient.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/ESP8266_Microgear/AuthClient.cpp.o
Compiling library "base64_encode"
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/base64_encode/main.cpp.o
Compiling library "Arduino_JSON"
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Arduino_JSON/JSONVar.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Arduino_JSON/JSON.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Arduino_JSON/cjson/cJSON.c.o
Compiling library "ESP8266HTTPClient for esp8266"
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/ESP8266HTTPClient for esp8266/ESP8266HTTPClient.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/ESP8266HTTPClient for esp8266/ESP8266HTTPClient for esp8266.a
Compiling library "Adafruit BusIO"
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Adafruit_BusIO/Adafruit_SPIDevice.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Adafruit_BusIO/Adafruit_BusIO_Register.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Adafruit_BusIO/Adafruit_GenericDevice.cpp.o
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Adafruit_BusIO/Adafruit_I2CDevice.cpp.o
Compiling library "EEPROM"
Using previously compiled file: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/EEPROM/EEPROM.cpp.o
Compiling core...
python /run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/signing.py --mode header --publickey /run/arduino/sketches/Test1ESP8266/public.key --out /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/core/Updater_Signing.h
Using precompiled core: /var/run/arduino/user-cache/cores/6b0f0ae0ab9d82105eabc31138a1266e/core.a
Linking everything together...
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/xtensa-lx106-elf-gcc -CC -E -P -DVTABLES_IN_FLASH /run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/ld/eagle.app.v6.common.ld.h -o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/local.eagle.app.v6.common.ld
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/xtensa-lx106-elf-gcc -fno-exceptions -Wl,-Map -Wl,/var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/Test1ESP8266.ino.map -g -w -Os -nostdlib -Wl,--no-check-sections -u app_entry -u _printf_float -u _scanf_float -Wl,-static -L/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/lib -L/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/ld -L/run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/tools/sdk/libc/xtensa-lx106-elf/lib -Teagle.flash.4m.ld -Wl,--gc-sections -Wl,-wrap,system_restart_local -Wl,-wrap,spi_flash_read -o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/Test1ESP8266.ino.elf -Wl,--start-group /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/sketch/Test1ESP8266.ino.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Adafruit_SSD1306/Adafruit_SSD1306.cpp.o "/var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Adafruit GFX Library/Adafruit_GFX.cpp.o" "/var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Adafruit GFX Library/Adafruit_GrayOLED.cpp.o" "/var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Adafruit GFX Library/Adafruit_SPITFT.cpp.o" "/var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Adafruit GFX Library/glcdfont.c.o" /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/SPI/SPI.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Wire/Wire.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/ESP8266WiFi/ESP8266WiFi.a /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES128.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES192.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES256.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AESCommon.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AESEsp32.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/BlockCipher.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/CBC.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/Cipher.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/CryptoAES_CBC.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES128.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES192.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES256.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AESCommon.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AESEsp32.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AuthenticatedCipher.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/BLAKE2b.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/BLAKE2s.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/BigNumberUtil.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/BlockCipher.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/CTR.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/ChaCha.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/ChaChaPoly.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/Cipher.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/Crypto.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/EAX.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/Ed25519.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/GCM.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/GF128.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/GHASH.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/HKDF.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/Hash.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/KeccakCore.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/NoiseSource.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/OMAC.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/P521.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/Poly1305.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/RNG.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/SHA224.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/SHA256.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/SHA3.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/SHA384.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/SHA512.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/SHAKE.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/XOF.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/XTS.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/ESP8266_Microgear/AuthClient.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/ESP8266_Microgear/MicroGear.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/ESP8266_Microgear/PubSubClient.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/ESP8266_Microgear/SHA1.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/base64_encode/main.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Arduino_JSON/JSON.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Arduino_JSON/JSONVar.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Arduino_JSON/cjson/cJSON.c.o "/var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/ESP8266HTTPClient for esp8266/ESP8266HTTPClient for esp8266.a" /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Adafruit_BusIO/Adafruit_BusIO_Register.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Adafruit_BusIO/Adafruit_GenericDevice.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Adafruit_BusIO/Adafruit_I2CDevice.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Adafruit_BusIO/Adafruit_SPIDevice.cpp.o /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/EEPROM/EEPROM.cpp.o /var/run/arduino/user-cache/cores/6b0f0ae0ab9d82105eabc31138a1266e/core.a -lhal -lphy -lpp -lnet80211 -llwip2-536-feat -lwpa -lcrypto -lmain -lwps -lbearssl -laxtls -lespnow -lsmartconfig -lairkiss -lwpa2 -lstdc++ -lm -lc -lgcc -Wl,--end-group -L/var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E
Using library Adafruit SSD1306 at version 2.5.15 in folder: /run/arduino/directories-data/internal/Adafruit_SSD1306_2.5.15_f1dc1246f6c87beb 
Using library Adafruit GFX Library at version 1.10.7 in folder: /run/arduino/custom-libraries/Adafruit GFX Library 
Using library SPI at version 1.0 in folder: /run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/SPI 
Using library Wire at version 1.0 in folder: /run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/Wire 
Using library ESP8266WiFi at version 1.0 in folder: /run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/ESP8266WiFi 
Using library CryptoAES_CBC at version 1.0.0 in folder: /run/arduino/directories-data/internal/CryptoAES_CBC_1.0.0_d5f7f007318d73bf 
Using library Crypto at version 0.4.0 in folder: /run/arduino/custom-libraries/Crypto 
Using library ESP8266 Microgear at version 1.2.4 in folder: /run/arduino/directories-data/internal/ESP8266_Microgear_1.2.4_afede7f269a7543b 
Using library base64_encode at version 2.0.6 in folder: /run/arduino/directories-data/internal/base64_encode_2.0.6_c3f610dce1335378 
Using library Arduino_JSON at version 0.2.0 in folder: /run/arduino/directories-data/internal/Arduino_JSON_0.2.0_5e41cd92c2654bcf 
Using library ESP8266HTTPClient for esp8266 at version 1.2 in folder: /run/arduino/custom-libraries/ESP8266HTTPClient for esp8266 
Using library Adafruit BusIO at version 1.17.2 in folder: /run/arduino/directories-data/internal/Adafruit_BusIO_1.17.2_a44a5fe9533d10ba 
Using library EEPROM at version 1.0 in folder: /run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/EEPROM 


/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES128.cpp.o: in function `AES128::keySize() const':
/var/run/arduino/custom-libraries/Crypto/src/AES128.cpp:60: multiple definition of `AES128::keySize() const'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES128.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES128.cpp:61: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES128.cpp.o: in function `AESTiny128::blockSize() const':
/var/run/arduino/custom-libraries/Crypto/src/AES128.cpp:168: multiple definition of `AESTiny128::blockSize() const'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES128.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES128.cpp:169: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES128.cpp.o: in function `AESTiny128::keySize() const':
/var/run/arduino/custom-libraries/Crypto/src/AES128.cpp:177: multiple definition of `AESTiny128::keySize() const'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES128.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES128.cpp:178: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES128.cpp.o: in function `AESTiny128::decryptBlock(unsigned char*, unsigned char const*)':
/var/run/arduino/custom-libraries/Crypto/src/AES128.cpp:236: multiple definition of `AESTiny128::decryptBlock(unsigned char*, unsigned char const*)'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES128.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES128.cpp:237: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES128.cpp.o: in function `AES128::~AES128()':
/var/run/arduino/custom-libraries/Crypto/src/AES128.cpp:48: multiple definition of `AES128::~AES128()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES128.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES128.cpp:49: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES128.cpp.o: in function `AES128::~AES128()':
/var/run/arduino/custom-libraries/Crypto/src/AES128.cpp:48: multiple definition of `AES128::~AES128()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES128.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES128.cpp:49: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES128.cpp.o: in function `AES128::~AES128()':
/var/run/arduino/custom-libraries/Crypto/src/AES128.cpp:48: multiple definition of `AES128::~AES128()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES128.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES128.cpp:49: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES128.cpp.o: in function `AESTiny128::setKey(unsigned char const*, unsigned int)':
/var/run/arduino/custom-libraries/Crypto/src/AES128.cpp:180: multiple definition of `AESTiny128::setKey(unsigned char const*, unsigned int)'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES128.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES128.cpp:181: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES128.cpp.o: in function `AESTiny128::~AESTiny128()':
/var/run/arduino/custom-libraries/Crypto/src/AES128.cpp:156: multiple definition of `AESTiny128::~AESTiny128()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES128.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES128.cpp:157: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES128.cpp.o: in function `AESTiny128::~AESTiny128()':
/var/run/arduino/custom-libraries/Crypto/src/AES128.cpp:156: multiple definition of `AESTiny128::~AESTiny128()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES128.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES128.cpp:157: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES128.cpp.o: in function `AESTiny128::~AESTiny128()':
/var/run/arduino/custom-libraries/Crypto/src/AES128.cpp:156: multiple definition of `AESTiny128::~AESTiny128()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES128.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES128.cpp:157: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES128.cpp.o: in function `AESTiny128::encryptBlock(unsigned char*, unsigned char const*)':
/var/run/arduino/custom-libraries/Crypto/src/AES128.cpp:190: multiple definition of `AESTiny128::encryptBlock(unsigned char*, unsigned char const*)'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES128.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES128.cpp:191: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES128.cpp.o: in function `AESSmall128::decryptBlock(unsigned char*, unsigned char const*)':
/var/run/arduino/custom-libraries/Crypto/src/AES128.cpp:307: multiple definition of `AESSmall128::decryptBlock(unsigned char*, unsigned char const*)'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES128.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES128.cpp:308: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES128.cpp.o: in function `AES128::setKey(unsigned char const*, unsigned int)':
/var/run/arduino/custom-libraries/Crypto/src/AES128.cpp:63: multiple definition of `AES128::setKey(unsigned char const*, unsigned int)'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES128.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES128.cpp:64: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES128.cpp.o: in function `AESSmall128::setKey(unsigned char const*, unsigned int)':
/var/run/arduino/custom-libraries/Crypto/src/AES128.cpp:281: multiple definition of `AESSmall128::setKey(unsigned char const*, unsigned int)'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES128.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES128.cpp:282: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES128.cpp.o: in function `AESTiny128::clear()':
/var/run/arduino/custom-libraries/Crypto/src/AES128.cpp:241: multiple definition of `AESTiny128::clear()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES128.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES128.cpp:242: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES128.cpp.o: in function `AESSmall128::~AESSmall128()':
/var/run/arduino/custom-libraries/Crypto/src/AES128.cpp:275: multiple definition of `AESSmall128::~AESSmall128()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES128.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES128.cpp:276: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES128.cpp.o: in function `AESSmall128::~AESSmall128()':
/var/run/arduino/custom-libraries/Crypto/src/AES128.cpp:275: multiple definition of `AESSmall128::~AESSmall128()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES128.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES128.cpp:276: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES128.cpp.o: in function `AESSmall128::~AESSmall128()':
/var/run/arduino/custom-libraries/Crypto/src/AES128.cpp:275: multiple definition of `AESSmall128::~AESSmall128()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES128.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES128.cpp:276: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES128.cpp.o: in function `AESSmall128::clear()':
/var/run/arduino/custom-libraries/Crypto/src/AES128.cpp:351: multiple definition of `AESSmall128::clear()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES128.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES128.cpp:352: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES128.cpp.o: in function `AES128::AES128()':
/var/run/arduino/custom-libraries/Crypto/src/AES128.cpp:42: multiple definition of `AES128::AES128()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES128.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES128.cpp:43: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES128.cpp.o: in function `AES128::AES128()':
/var/run/arduino/custom-libraries/Crypto/src/AES128.cpp:42: multiple definition of `AES128::AES128()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES128.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES128.cpp:43: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES128.cpp.o: in function `AESTiny128::AESTiny128()':
/var/run/arduino/custom-libraries/Crypto/src/AES128.cpp:152: multiple definition of `AESTiny128::AESTiny128()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES128.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES128.cpp:153: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES128.cpp.o: in function `AESTiny128::AESTiny128()':
/var/run/arduino/custom-libraries/Crypto/src/AES128.cpp:152: multiple definition of `AESTiny128::AESTiny128()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES128.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES128.cpp:153: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES128.cpp.o: in function `AESSmall128::AESSmall128()':
/var/run/arduino/custom-libraries/Crypto/src/AES128.cpp:271: multiple definition of `AESSmall128::AESSmall128()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES128.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES128.cpp:272: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES128.cpp.o: in function `AESSmall128::AESSmall128()':
/var/run/arduino/custom-libraries/Crypto/src/AES128.cpp:271: multiple definition of `AESSmall128::AESSmall128()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES128.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES128.cpp:272: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES192.cpp.o: in function `AES192::keySize() const':
/var/run/arduino/custom-libraries/Crypto/src/AES192.cpp:60: multiple definition of `AES192::keySize() const'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES192.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES192.cpp:61: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES192.cpp.o: in function `AES192::~AES192()':
/var/run/arduino/custom-libraries/Crypto/src/AES192.cpp:48: multiple definition of `AES192::~AES192()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES192.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES192.cpp:49: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES192.cpp.o: in function `AES192::~AES192()':
/var/run/arduino/custom-libraries/Crypto/src/AES192.cpp:48: multiple definition of `AES192::~AES192()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES192.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES192.cpp:49: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES192.cpp.o: in function `AES192::~AES192()':
/var/run/arduino/custom-libraries/Crypto/src/AES192.cpp:48: multiple definition of `AES192::~AES192()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES192.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES192.cpp:49: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES192.cpp.o: in function `AES192::setKey(unsigned char const*, unsigned int)':
/var/run/arduino/custom-libraries/Crypto/src/AES192.cpp:63: multiple definition of `AES192::setKey(unsigned char const*, unsigned int)'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES192.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES192.cpp:64: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES192.cpp.o: in function `AES192::AES192()':
/var/run/arduino/custom-libraries/Crypto/src/AES192.cpp:42: multiple definition of `AES192::AES192()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES192.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES192.cpp:43: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES192.cpp.o: in function `AES192::AES192()':
/var/run/arduino/custom-libraries/Crypto/src/AES192.cpp:42: multiple definition of `AES192::AES192()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES192.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES192.cpp:43: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES256.cpp.o: in function `AES256::keySize() const':
/var/run/arduino/custom-libraries/Crypto/src/AES256.cpp:60: multiple definition of `AES256::keySize() const'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES256.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES256.cpp:61: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES256.cpp.o: in function `AESTiny256::blockSize() const':
/var/run/arduino/custom-libraries/Crypto/src/AES256.cpp:205: multiple definition of `AESTiny256::blockSize() const'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES256.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES256.cpp:206: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES256.cpp.o: in function `AESTiny256::keySize() const':
/var/run/arduino/custom-libraries/Crypto/src/AES256.cpp:214: multiple definition of `AESTiny256::keySize() const'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES256.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES256.cpp:215: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES256.cpp.o: in function `AESTiny256::decryptBlock(unsigned char*, unsigned char const*)':
/var/run/arduino/custom-libraries/Crypto/src/AES256.cpp:273: multiple definition of `AESTiny256::decryptBlock(unsigned char*, unsigned char const*)'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES256.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES256.cpp:274: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES256.cpp.o: in function `AES256::~AES256()':
/var/run/arduino/custom-libraries/Crypto/src/AES256.cpp:48: multiple definition of `AES256::~AES256()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES256.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES256.cpp:49: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES256.cpp.o: in function `AES256::~AES256()':
/var/run/arduino/custom-libraries/Crypto/src/AES256.cpp:48: multiple definition of `AES256::~AES256()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES256.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES256.cpp:49: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES256.cpp.o: in function `AES256::~AES256()':
/var/run/arduino/custom-libraries/Crypto/src/AES256.cpp:48: multiple definition of `AES256::~AES256()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES256.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES256.cpp:49: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES256.cpp.o: in function `AESTiny256::setKey(unsigned char const*, unsigned int)':
/var/run/arduino/custom-libraries/Crypto/src/AES256.cpp:217: multiple definition of `AESTiny256::setKey(unsigned char const*, unsigned int)'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES256.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES256.cpp:218: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES256.cpp.o: in function `AESTiny256::~AESTiny256()':
/var/run/arduino/custom-libraries/Crypto/src/AES256.cpp:193: multiple definition of `AESTiny256::~AESTiny256()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES256.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES256.cpp:194: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES256.cpp.o: in function `AESTiny256::~AESTiny256()':
/var/run/arduino/custom-libraries/Crypto/src/AES256.cpp:193: multiple definition of `AESTiny256::~AESTiny256()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES256.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES256.cpp:194: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES256.cpp.o: in function `AESTiny256::~AESTiny256()':
/var/run/arduino/custom-libraries/Crypto/src/AES256.cpp:193: multiple definition of `AESTiny256::~AESTiny256()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES256.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES256.cpp:194: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES256.cpp.o: in function `AESTiny256::encryptBlock(unsigned char*, unsigned char const*)':
/var/run/arduino/custom-libraries/Crypto/src/AES256.cpp:227: multiple definition of `AESTiny256::encryptBlock(unsigned char*, unsigned char const*)'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES256.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES256.cpp:228: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES256.cpp.o: in function `AESSmall256::decryptBlock(unsigned char*, unsigned char const*)':
/var/run/arduino/custom-libraries/Crypto/src/AES256.cpp:352: multiple definition of `AESSmall256::decryptBlock(unsigned char*, unsigned char const*)'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES256.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES256.cpp:353: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES256.cpp.o: in function `AES256::setKey(unsigned char const*, unsigned int)':
/var/run/arduino/custom-libraries/Crypto/src/AES256.cpp:63: multiple definition of `AES256::setKey(unsigned char const*, unsigned int)'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES256.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES256.cpp:64: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES256.cpp.o: in function `AESSmall256::setKey(unsigned char const*, unsigned int)':
/var/run/arduino/custom-libraries/Crypto/src/AES256.cpp:318: multiple definition of `AESSmall256::setKey(unsigned char const*, unsigned int)'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES256.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES256.cpp:319: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES256.cpp.o: in function `AESTiny256::clear()':
/var/run/arduino/custom-libraries/Crypto/src/AES256.cpp:278: multiple definition of `AESTiny256::clear()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES256.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES256.cpp:279: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES256.cpp.o: in function `AESSmall256::~AESSmall256()':
/var/run/arduino/custom-libraries/Crypto/src/AES256.cpp:312: multiple definition of `AESSmall256::~AESSmall256()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES256.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES256.cpp:313: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES256.cpp.o: in function `AESSmall256::~AESSmall256()':
/var/run/arduino/custom-libraries/Crypto/src/AES256.cpp:312: multiple definition of `AESSmall256::~AESSmall256()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES256.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES256.cpp:313: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES256.cpp.o: in function `AESSmall256::~AESSmall256()':
/var/run/arduino/custom-libraries/Crypto/src/AES256.cpp:312: multiple definition of `AESSmall256::~AESSmall256()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES256.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES256.cpp:313: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES256.cpp.o: in function `AESSmall256::clear()':
/var/run/arduino/custom-libraries/Crypto/src/AES256.cpp:396: multiple definition of `AESSmall256::clear()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES256.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES256.cpp:397: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES256.cpp.o: in function `AES256::AES256()':
/var/run/arduino/custom-libraries/Crypto/src/AES256.cpp:42: multiple definition of `AES256::AES256()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES256.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES256.cpp:43: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES256.cpp.o: in function `AES256::AES256()':
/var/run/arduino/custom-libraries/Crypto/src/AES256.cpp:42: multiple definition of `AES256::AES256()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES256.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES256.cpp:43: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES256.cpp.o: in function `AESTiny256::AESTiny256()':
/var/run/arduino/custom-libraries/Crypto/src/AES256.cpp:189: multiple definition of `AESTiny256::AESTiny256()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES256.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES256.cpp:190: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES256.cpp.o: in function `AESTiny256::AESTiny256()':
/var/run/arduino/custom-libraries/Crypto/src/AES256.cpp:189: multiple definition of `AESTiny256::AESTiny256()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES256.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES256.cpp:190: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES256.cpp.o: in function `AESSmall256::AESSmall256()':
/var/run/arduino/custom-libraries/Crypto/src/AES256.cpp:308: multiple definition of `AESSmall256::AESSmall256()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES256.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES256.cpp:309: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AES256.cpp.o: in function `AESSmall256::AESSmall256()':
/var/run/arduino/custom-libraries/Crypto/src/AES256.cpp:308: multiple definition of `AESSmall256::AESSmall256()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AES256.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AES256.cpp:309: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AESCommon.cpp.o: in function `AESCommon::blockSize() const':
/var/run/arduino/custom-libraries/Crypto/src/AESCommon.cpp:147: multiple definition of `AESCommon::blockSize() const'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AESCommon.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AESCommon.cpp:148: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AESCommon.cpp.o: in function `AESCommon::~AESCommon()':
/var/run/arduino/custom-libraries/Crypto/src/AESCommon.cpp:136: multiple definition of `AESCommon::~AESCommon()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AESCommon.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AESCommon.cpp:137: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AESCommon.cpp.o: in function `AESCommon::~AESCommon()':
/var/run/arduino/custom-libraries/Crypto/src/AESCommon.cpp:136: multiple definition of `AESCommon::~AESCommon()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AESCommon.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AESCommon.cpp:137: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AESCommon.cpp.o: in function `AESCommon::~AESCommon()':
/var/run/arduino/custom-libraries/Crypto/src/AESCommon.cpp:136: multiple definition of `AESCommon::~AESCommon()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AESCommon.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AESCommon.cpp:137: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AESCommon.cpp.o: in function `AESCommon::clear()':
/var/run/arduino/custom-libraries/Crypto/src/AESCommon.cpp:333: multiple definition of `AESCommon::clear()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AESCommon.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AESCommon.cpp:334: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AESCommon.cpp.o: in function `AESCommon::AESCommon()':
/var/run/arduino/custom-libraries/Crypto/src/AESCommon.cpp:127: multiple definition of `AESCommon::AESCommon()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AESCommon.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AESCommon.cpp:128: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AESCommon.cpp.o: in function `AESCommon::AESCommon()':
/var/run/arduino/custom-libraries/Crypto/src/AESCommon.cpp:127: multiple definition of `AESCommon::AESCommon()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AESCommon.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AESCommon.cpp:128: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AESCommon.cpp.o: in function `AESCommon::subBytesAndShiftRows(unsigned char*, unsigned char const*)':
/var/run/arduino/custom-libraries/Crypto/src/AESCommon.cpp:187: multiple definition of `AESCommon::subBytesAndShiftRows(unsigned char*, unsigned char const*)'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AESCommon.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AESCommon.cpp:188: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AESCommon.cpp.o: in function `AESCommon::inverseShiftRowsAndSubBytes(unsigned char*, unsigned char const*)':
/var/run/arduino/custom-libraries/Crypto/src/AESCommon.cpp:207: multiple definition of `AESCommon::inverseShiftRowsAndSubBytes(unsigned char*, unsigned char const*)'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AESCommon.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AESCommon.cpp:208: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AESCommon.cpp.o: in function `AESCommon::mixColumn(unsigned char*, unsigned char*)':
/var/run/arduino/custom-libraries/Crypto/src/AESCommon.cpp:227: multiple definition of `AESCommon::mixColumn(unsigned char*, unsigned char*)'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AESCommon.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AESCommon.cpp:228: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AESCommon.cpp.o: in function `AESCommon::encryptBlock(unsigned char*, unsigned char const*)':
/var/run/arduino/custom-libraries/Crypto/src/AESCommon.cpp:271: multiple definition of `AESCommon::encryptBlock(unsigned char*, unsigned char const*)'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AESCommon.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AESCommon.cpp:272: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AESCommon.cpp.o: in function `AESCommon::inverseMixColumn(unsigned char*, unsigned char const*)':
/var/run/arduino/custom-libraries/Crypto/src/AESCommon.cpp:244: multiple definition of `AESCommon::inverseMixColumn(unsigned char*, unsigned char const*)'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AESCommon.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AESCommon.cpp:245: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AESCommon.cpp.o: in function `AESCommon::decryptBlock(unsigned char*, unsigned char const*)':
/var/run/arduino/custom-libraries/Crypto/src/AESCommon.cpp:302: multiple definition of `AESCommon::decryptBlock(unsigned char*, unsigned char const*)'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AESCommon.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AESCommon.cpp:303: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AESCommon.cpp.o: in function `AESCommon::keyScheduleCore(unsigned char*, unsigned char const*, unsigned char)':
/var/run/arduino/custom-libraries/Crypto/src/AESCommon.cpp:340: multiple definition of `AESCommon::keyScheduleCore(unsigned char*, unsigned char const*, unsigned char)'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AESCommon.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AESCommon.cpp:341: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/AESCommon.cpp.o: in function `AESCommon::applySbox(unsigned char*, unsigned char const*)':
/var/run/arduino/custom-libraries/Crypto/src/AESCommon.cpp:354: multiple definition of `AESCommon::applySbox(unsigned char*, unsigned char const*)'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/AESCommon.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/AESCommon.cpp:355: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/BlockCipher.cpp.o: in function `BlockCipher::~BlockCipher()':
/var/run/arduino/custom-libraries/Crypto/src/BlockCipher.cpp:52: multiple definition of `BlockCipher::~BlockCipher()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/BlockCipher.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/BlockCipher.cpp:52: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/BlockCipher.cpp.o: in function `BlockCipher::~BlockCipher()':
/var/run/arduino/custom-libraries/Crypto/src/BlockCipher.cpp:52: multiple definition of `BlockCipher::~BlockCipher()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/BlockCipher.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/BlockCipher.cpp:52: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/BlockCipher.cpp.o: in function `BlockCipher::~BlockCipher()':
/var/run/arduino/custom-libraries/Crypto/src/BlockCipher.cpp:52: multiple definition of `BlockCipher::~BlockCipher()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/BlockCipher.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/BlockCipher.cpp:52: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/BlockCipher.cpp.o: in function `BlockCipher::BlockCipher()':
/var/run/arduino/custom-libraries/Crypto/src/BlockCipher.cpp:40: multiple definition of `BlockCipher::BlockCipher()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/BlockCipher.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/BlockCipher.cpp:40: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/BlockCipher.cpp.o: in function `BlockCipher::BlockCipher()':
/var/run/arduino/custom-libraries/Crypto/src/BlockCipher.cpp:40: multiple definition of `BlockCipher::BlockCipher()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/BlockCipher.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/BlockCipher.cpp:40: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/Cipher.cpp.o: in function `Cipher::~Cipher()':
/var/run/arduino/custom-libraries/Crypto/src/Cipher.cpp:53: multiple definition of `Cipher::~Cipher()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/Cipher.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/Cipher.cpp:53: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/Cipher.cpp.o: in function `Cipher::~Cipher()':
/var/run/arduino/custom-libraries/Crypto/src/Cipher.cpp:53: multiple definition of `Cipher::~Cipher()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/Cipher.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/Cipher.cpp:53: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/Cipher.cpp.o: in function `Cipher::~Cipher()':
/var/run/arduino/custom-libraries/Crypto/src/Cipher.cpp:53: multiple definition of `Cipher::~Cipher()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/Cipher.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/Cipher.cpp:53: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/Cipher.cpp.o: in function `Cipher::Cipher()':
/var/run/arduino/custom-libraries/Crypto/src/Cipher.cpp:41: multiple definition of `Cipher::Cipher()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/Cipher.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/Cipher.cpp:41: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/Cipher.cpp.o: in function `Cipher::Cipher()':
/var/run/arduino/custom-libraries/Crypto/src/Cipher.cpp:41: multiple definition of `Cipher::Cipher()'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/Cipher.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/Cipher.cpp:41: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/Crypto.cpp.o: in function `clean(void*, unsigned int)':
/var/run/arduino/custom-libraries/Crypto/src/Crypto.cpp:35: multiple definition of `clean(void*, unsigned int)'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/CryptoAES_CBC.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/CryptoAES_CBC.cpp:36: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/Crypto.cpp.o: in function `secure_compare(void const*, void const*, unsigned int)':
/var/run/arduino/custom-libraries/Crypto/src/Crypto.cpp:74: multiple definition of `secure_compare(void const*, void const*, unsigned int)'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/CryptoAES_CBC.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/CryptoAES_CBC.cpp:75: first defined here
/run/arduino/directories-data/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/Crypto/Crypto.cpp.o: in function `crypto_crc8(unsigned char, void const*, unsigned int)':
/var/run/arduino/custom-libraries/Crypto/src/Crypto.cpp:99: multiple definition of `crypto_crc8(unsigned char, void const*, unsigned int)'; /var/run/arduino/user-cache/sketches/30C997AB625B5CE3F72F85C0E343596E/libraries/CryptoAES_CBC/CryptoAES_CBC.cpp.o:/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/CryptoAES_CBC.cpp:100: first defined here
collect2: error: ld returned 1 exit status
Multiple libraries were found for "RNG.h"
  Used: /run/arduino/custom-libraries/Crypto
  Not used: /run/arduino/directories-data/internal/Crypto_0.4.0_a7af3cb4230b76f3
  Not used: /run/arduino/directories-data/internal/CC-Lantern_1.4.3_6c0910038684765e
Multiple libraries were found for "Arduino_JSON.h"
  Used: /run/arduino/directories-data/internal/Arduino_JSON_0.2.0_5e41cd92c2654bcf
  Not used: /run/arduino/directories-data/internal/MotorGo_Mini_Driver_1.1.0_65a983642389deb6
Multiple libraries were found for "Adafruit_I2CDevice.h"
  Used: /run/arduino/directories-data/internal/Adafruit_BusIO_1.17.2_a44a5fe9533d10ba
  Not used: /run/arduino/directories-data/internal/EIS_INTERBOT_1.0.4_85ce300e13d30349
  Not used: /run/arduino/directories-data/internal/VEGAIoT_BusIO_1.0.0_68606b9abaf94dc3
  Not used: /run/arduino/directories-data/internal/EIS_0.0.1_7b9a78c117637fbc
Multiple libraries were found for "Adafruit_SSD1306.h"
  Used: /run/arduino/directories-data/internal/Adafruit_SSD1306_2.5.15_f1dc1246f6c87beb
  Not used: /run/arduino/directories-data/internal/EIS_INTERBOT_1.0.4_85ce300e13d30349
  Not used: /run/arduino/directories-data/internal/Adafruit_SSD1306_Wemos_Mini_OLED_1.1.2_794aac924f83da7f
  Not used: /run/arduino/directories-data/internal/EIS_0.0.1_7b9a78c117637fbc
Multiple libraries were found for "Adafruit_GFX.h"
  Used: /run/arduino/custom-libraries/Adafruit GFX Library
  Not used: /run/arduino/directories-data/internal/EIS_INTERBOT_1.0.4_85ce300e13d30349
  Not used: /run/arduino/directories-data/internal/Hanuman_1.4.0_9b5ae950e2a2ee63
  Not used: /run/arduino/directories-data/internal/DFRobot_RGBMatrix_1.0.1_07c8edece0610b8a
  Not used: /run/arduino/directories-data/internal/Adafruit_GFX_Library_1.12.1_0a7f9e1a08fbb518
  Not used: /run/arduino/directories-data/internal/EIS_0.0.1_7b9a78c117637fbc
Multiple libraries were found for "SPI.h"
  Used: /run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/SPI
  Not used: /run/arduino/directories-data/internal/EventEthernet_1.0.0_bd9dd894ef7641f8
Multiple libraries were found for "Wire.h"
  Used: /run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/Wire
  Not used: /run/arduino/directories-data/internal/FlexWire_1.2.1_1fc5f1d1a14af0e7
Multiple libraries were found for "SHA1.h"
  Used: /run/arduino/directories-data/internal/ESP8266_Microgear_1.2.4_afede7f269a7543b
  Not used: /run/arduino/directories-data/internal/MySQL_Query_Client_1.0.2_b9871e907bff0d3b
  Not used: /run/arduino/directories-data/internal/ArduinoBearSSL_1.7.6_3fd6f33f302ce290
Multiple libraries were found for "ESP8266HTTPClient.h"
  Used: /run/arduino/custom-libraries/ESP8266HTTPClient for esp8266
  Not used: /run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/ESP8266HTTPClient
Multiple libraries were found for "EEPROM.h"
  Used: /run/arduino/directories-data/packages/esp8266/hardware/esp8266/2.5.0/libraries/EEPROM
  Not used: /run/arduino/directories-data/internal/Hello_Drum_0.7.7_66dfa60a72029988
  Not used: /run/arduino/directories-data/internal/ATMAC_EEPROM_1.0.0_9d4d2fa414f49ad4
  Not used: /run/arduino/directories-data/internal/arduino-NVM_0.9.1_b209fc0344f36f85

Any thoughts from the experts?

Dave

I have been doing a little more playing...

Somehow, the Crypto and CryptoAES_CBC libraries had ended up in my custom libraries. Flushed them out now.

With these header files:

// https://rweather.github.io/arduinolibs/crypto.html
#include <CryptoAES_CBC.h>
// #include <Crypto.h>
#include <RNG.h>
#include <SHA1.h>
#include <SHA256.h>

// https://github.com/Obsttube/CryptoAES_CBC
// #include <CryptoAES_CBC.h>
#include <AES.h>
#include <CBC.h>

I get these errors:

/run/arduino/sketches/Test1ESP8266/Tapo.ino: In function 'void testSHA()':
/run/arduino/sketches/Test1ESP8266/Tapo.ino:161:10: error: expected ';' before 'sha256'
   SHA256 sha256;
          ^
/run/arduino/sketches/Test1ESP8266/Tapo.ino:163:3: error: 'sha256' was not declared in this scope
   sha256.reset();
   ^
/run/arduino/sketches/Test1ESP8266/Tapo.ino:177:6: error: expected unqualified-id before '.' token
   RNG.rand( random_bytes, sizeof( random_bytes ) );
      ^
/run/arduino/sketches/Test1ESP8266/Tapo.ino: In function 'int Initialise(const char*)':
/run/arduino/sketches/Test1ESP8266/Tapo.ino:238:6: error: expected unqualified-id before '.' token
   RNG.rand( local_seed, sizeof( local_seed ) );
      ^
/run/arduino/sketches/Test1ESP8266/Tapo.ino:380:10: error: expected ';' before 'sha256'
   SHA256 sha256;
          ^
/run/arduino/sketches/Test1ESP8266/Tapo.ino:382:3: error: 'sha256' was not declared in this scope
   sha256.reset(); // Reset.
   ^
/run/arduino/sketches/Test1ESP8266/Tapo.ino: In function 'void Tapo_setup()':
/run/arduino/sketches/Test1ESP8266/Tapo.ino:681:6: error: expected unqualified-id before '.' token
   RNG.begin( "Tapo Woodgreen Church." );
      ^
/run/arduino/sketches/Test1ESP8266/Tapo.ino: In function 'void Tapo_loop()':
/run/arduino/sketches/Test1ESP8266/Tapo.ino:687:6: error: expected unqualified-id before '.' token
   RNG.loop();
      ^

I am guessing that SHA256 and RNG have meaning only if <Crypto.h> is included?

If I tweak the include libraries to this:

// https://rweather.github.io/arduinolibs/crypto.html
#include <CryptoAES_CBC.h>
#include <Crypto.h>
#include <RNG.h>
#include <SHA1.h>
#include <SHA256.h>

// https://github.com/Obsttube/CryptoAES_CBC
// #include <CryptoAES_CBC.h>
#include <AES.h>
#include <CBC.h>

I get these errors:

In file included from /run/arduino/sketches/Test1ESP8266/Tapo.ino:63:0:
/var/run/arduino/directories-user/libraries/Crypto/src/Crypto.h:32:13: error: redefinition of 'template<class T> void clean(T&)'
 inline void clean(T &var)
             ^
In file included from /run/arduino/sketches/Test1ESP8266/Tapo.ino:62:0:
/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/CryptoAES_CBC.h:33:13: error: 'template<class T> void clean(T&)' previously declared here
 inline void clean(T &var)

Slightly different. But I am just wondering whether this ordering has introduced a new error that is masking the linking error?

Swapping the order of the #includes for <Crypto.h> and <CryptoAES_CBC.h> has no difference.

I have tried a few other things, and not found anything to help. As soon as I bring the two sets of libraries together, it seems as though I get either compilation or linkage problems.

Dave

Just thinking whilst doing other things...

I wonder what would happen if I created a separate .ino file within my project, including the CryptoAES_CBC header files in there, and creating wrapper functions that I can call from my Tapo.ino file?

Or will this push the problems back to the link phase again?

EDIT: Creating a separate file (ende_crypt.ino) within my project, and #including the CryptoAES_CBC header files within here, did nothing for the error reporting:

#include <CryptoAES_CBC.h>
// #include <AES.h>
//#include <CBC.h>

Gave me:

In file included from /run/arduino/sketches/Test1ESP8266/ende_crypt.ino:3:0:
/var/run/arduino/directories-user/libraries/CryptoAES_CBC/src/CryptoAES_CBC.h:33:13: error: redefinition of 'template<class T> void clean(T&)'
 inline void clean(T &var)
             ^
In file included from /run/arduino/sketches/Test1ESP8266/Tapo.ino:63:0:
/var/run/arduino/directories-user/libraries/Crypto/src/Crypto.h:32:13: error: 'template<class T> void clean(T&)' previously declared here
 inline void clean(T &var)
             ^

So, that is not a solution. Worth a try though...

Incidentally, I am only using the Crypto library for SHA256 and RNG and the CryptoAES_CBC library for AES128 CBC mode. Both on the ESP8266.

Dave

Anyone?

The problem seems to be Crypto.h.

SHA1 is used from elsewhere (having been deprecated in Crypto.h).

I can sacrifice RNG in favour of a simple random number generator. This application doesn't have to be super secure - I am just trying to get the project to work...

If I modify my code to not use RNG, and then remove Crypto.h, my problem becomes one of finding a suitable SHA256 library to work with everything else I have.

I will have a look at that solution next.

Dave

I sorted my problem out myself in the end.

The basic problem is one of include files developed by different developers and used together within a single project that 'interfere' with each other.

In the end I found that the Seeed_Arduino_mbedtls library contained everything I required.

This is my include file structure:

#include <Seeed_mbedtls.h>
#define MBEDTLS_CIPHER_MODE_CBC 1
#include <mbedtls/aes.h>
  1. This gives me SHA1 and SHA256.
  2. AES CBC encrypt and decrypt.
  3. b64encode and b64decode.

I wrapped the code for these functions into my own helper functions.

Happy to share if anyone wants them.

Dave