Skip to content

Compiling on latest PlatformIO #258

Open
@madmaxed

Description

@madmaxed

I'm having trouble getting the current main branch to compile on PlatformIO.

The problem is with the simplehacks/array_size2. I have attached my PlatformIO terminal.

reference to 'detail' is ambiguous
namespace ArduinoJson::V6213PA2::detail

  • Executing task: C:\Users\mxd.platformio\penv\Scripts\platformio.exe run --environment fastled_webserver__d1_mini

Processing fastled_webserver__d1_mini (platform: [email protected]; board: d1_mini; framework: arduino)
------------------------------------------------------------------------------------------------------------------------------------------------Verbose mode can be enabled via -v, --verbose option
CONFIGURATION: https://docs.platformio.org/page/boards/espressif8266/d1_mini.html
PLATFORM: Espressif 8266 (2.6.3) > WeMos D1 R2 and mini
HARDWARE: ESP8266 80MHz, 80KB RAM, 4MB Flash
PACKAGES:

  • framework-arduinoespressif8266 @ 3.20704.7 (2.7.4)
  • tool-esptool @ 1.413.0 (4.13)
  • tool-esptoolpy @ 1.30000.201119 (3.0.0)
  • toolchain-xtensa @ 2.40802.200502 (4.8.2)
    Converting esp8266-fastled-webserver.ino
    LDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldf
    LDF Modes: Finder ~ chain, Compatibility ~ strict
    Found 33 compatible libraries
    Scanning dependencies...
    Dependency Graph
    |-- FastLED @ 3.4.0
    |-- ArduinoJson @ 6.21.3
    |-- NTPClient @ 3.1.0
    |-- WiFiManager @ 2.0.16-rc.2+sha.3a303ee
    |-- EEPROM @ 1.0
    |-- ESP8266HTTPClient @ 1.2
    |-- ESP8266HTTPUpdateServer @ 1.0
    |-- ESP8266mDNS @ 1.2
    |-- ESP8266WebServer @ 1.0
    |-- ESP8266WiFi @ 1.0
    |-- LittleFS(esp8266) @ 0.1.0
    Building in release mode
    Compiling .pio\build\fastled_webserver__d1_mini\src\GradientPalettes.cpp.o
    Compiling .pio\build\fastled_webserver__d1_mini\src\esp8266-fastled-webserver.ino.cpp.o
    Archiving .pio\build\fastled_webserver__d1_mini\lib00a\libESP8266WiFi.a
    Archiving .pio\build\fastled_webserver__d1_mini\lib590\libDNSServer.a
    Indexing .pio\build\fastled_webserver__d1_mini\lib590\libDNSServer.a
    Indexing .pio\build\fastled_webserver__d1_mini\lib00a\libESP8266WiFi.a
    Compiling .pio\build\fastled_webserver__d1_mini\libe95\ESP8266mDNS\LEAmDNS_Transfer.cpp.o
    Compiling .pio\build\fastled_webserver__d1_mini\libe7f\ESP8266WebServer\detail\mimetable.cpp.o
    Compiling .pio\build\fastled_webserver__d1_mini\lib110\WiFiManager\WiFiManager.cpp.o
    Compiling .pio\build\fastled_webserver__d1_mini\libc0b\EEPROM\EEPROM.cpp.o
    Compiling .pio\build\fastled_webserver__d1_mini\lib632\ESP8266HTTPClient\ESP8266HTTPClient.cpp.o
    Compiling .pio\build\fastled_webserver__d1_mini\lib259\LittleFS\LittleFS.cpp.o
    Compiling .pio\build\fastled_webserver__d1_mini\lib259\LittleFS\lfs.c.o
    Compiling .pio\build\fastled_webserver__d1_mini\lib259\LittleFS\lfs_util.c.o
    Archiving .pio\build\fastled_webserver__d1_mini\libFrameworkArduinoVariant.a
    Indexing .pio\build\fastled_webserver__d1_mini\libFrameworkArduinoVariant.a
    Compiling .pio\build\fastled_webserver__d1_mini\FrameworkArduino\Crypto.cpp.o
    Compiling .pio\build\fastled_webserver__d1_mini\FrameworkArduino\Esp-frag.cpp.o
    Compiling .pio\build\fastled_webserver__d1_mini\FrameworkArduino\Esp-version.cpp.o
    Archiving .pio\build\fastled_webserver__d1_mini\libe7f\libESP8266WebServer.a
    Compiling .pio\build\fastled_webserver__d1_mini\FrameworkArduino\Esp.cpp.o
    Compiling .pio\build\fastled_webserver__d1_mini\FrameworkArduino\FS.cpp.o
    Compiling .pio\build\fastled_webserver__d1_mini\FrameworkArduino\FSnoop.cpp.o
    Indexing .pio\build\fastled_webserver__d1_mini\libe7f\libESP8266WebServer.a
    Compiling .pio\build\fastled_webserver__d1_mini\FrameworkArduino\FunctionalInterrupt.cpp.o
    Archiving .pio\build\fastled_webserver__d1_mini\libc0b\libEEPROM.a
    C:\Users\mxd.platformio\packages\[email protected]\cores\esp8266\Crypto.cpp:101:8: warning: unused parameter 'hashTypeNaturalLength' [-Wunused-parameter]
    String createBearsslHmac(const br_hash_class *hashType, const uint8_t hashTypeNaturalLength, const String &message, const void *hashKey, const
    size_t hashKeyLength, const size_t hmacLength)
    ^
    C:\Users\mxd.platformio\packages\[email protected]\cores\esp8266\Crypto.cpp:153:8: warning: unused parameter 'hashTypeNaturalLength' [-Wunused-parameter]
    String createBearsslHmacCT(const br_hash_class *hashType, const uint8_t hashTypeNaturalLength, const String &message, const void *hashKey, const size_t hashKeyLength, const size_t hmacLength)
    ^
    Compiling .pio\build\fastled_webserver__d1_mini\FrameworkArduino\HardwareSerial.cpp.o
    In file included from esp8266-fastled-webserver\common.h:56:0,
    from esp8266-fastled-webserver\GradientPalettes.cpp:1:
    esp8266-fastled-webserver./include/simplehacks/array_size2.h:65:30: error: reference to 'detail' is ambiguous
    #define ARRAY_SIZE2(arr) detail::ARRAY_SIZE2_ARGUMENT_CANNOT_BE_POINTER(arr)
    ^
    esp8266-fastled-webserver\GradientPalettes.cpp:518:39: note: in expansion of macro 'ARRAY_SIZE2'
    const uint8_t gGradientPaletteCount = ARRAY_SIZE2(gGradientPalettes);
    ^
    esp8266-fastled-webserver./include/simplehacks/array_size2.h:58:5: note: candidates are: namespace detail { }
    {
    ^
    In file included from .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson/Variant/Converter.hpp:7:0,
    from .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson/Variant/VariantRefBase.hpp:8,
    from .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson/Array/ElementProxy.hpp:7,
    from .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson/Array/JsonArray.hpp:7,
    from .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson.hpp:29,
    from .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson.h:9,
    from esp8266-fastled-webserver\common.h:33,
    from esp8266-fastled-webserver\GradientPalettes.cpp:1:
    .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson/Variant/Converter.hpp:16:1: note: namespace ArduinoJson::V6213PA2::detail { }
    ARDUINOJSON_BEGIN_PRIVATE_NAMESPACE
    ^
    In file included from esp8266-fastled-webserver\common.h:56:0,
    from esp8266-fastled-webserver\GradientPalettes.cpp:1:
    esp8266-fastled-webserver./include/simplehacks/array_size2.h:65:30: error: reference to 'detail' is ambiguous
    #define ARRAY_SIZE2(arr) detail::ARRAY_SIZE2_ARGUMENT_CANNOT_BE_POINTER(arr)
    ^
    esp8266-fastled-webserver\GradientPalettes.cpp:518:39: note: in expansion of macro 'ARRAY_SIZE2'
    const uint8_t gGradientPaletteCount = ARRAY_SIZE2(gGradientPalettes);
    ^
    esp8266-fastled-webserver./include/simplehacks/array_size2.h:58:5: note: candidates are: namespace detail { }
    {
    ^
    Indexing .pio\build\fastled_webserver__d1_mini\libc0b\libEEPROM.a
    In file included from .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson/Variant/Converter.hpp:7:0,
    from .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson/Variant/VariantRefBase.hpp:8,
    from .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson/Array/ElementProxy.hpp:7,
    from .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson/Array/JsonArray.hpp:7,
    from .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson.hpp:29,
    from .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson.h:9,
    from esp8266-fastled-webserver\common.h:33,
    from esp8266-fastled-webserver\GradientPalettes.cpp:1:
    .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson/Variant/Converter.hpp:16:1: note: namespace ArduinoJson::V6213PA2::detail { }
    ARDUINOJSON_BEGIN_PRIVATE_NAMESPACE
    ^
    In file included from esp8266-fastled-webserver\common.h:56:0,
    from D:/src/esp8266-fastled-webserver_madmaxed/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:19:
    esp8266-fastled-webserver./include/simplehacks/array_size2.h:65:30: error: reference to 'detail' is ambiguous
    Compiling .pio\build\fastled_webserver__d1_mini\FrameworkArduino\IPAddress.cpp.o
    #define ARRAY_SIZE2(arr) detail::ARRAY_SIZE2_ARGUMENT_CANNOT_BE_POINTER(arr)
    ^
    D:/src/esp8266-fastled-webserver_madmaxed/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:235:30: note: in expansion of macro 'ARRAY_SIZE2'
    const uint8_t patternCount = ARRAY_SIZE2(patterns);
    ^
    esp8266-fastled-webserver./include/simplehacks/array_size2.h:58:5: note: candidates are: namespace detail { }
    {
    Compiling .pio\build\fastled_webserver__d1_mini\FrameworkArduino\MD5Builder.cpp.o
    ^
    In file included from .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson/Variant/Converter.hpp:7:0,
    from .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson/Variant/VariantRefBase.hpp:8,
    from .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson/Array/ElementProxy.hpp:7,
    from .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson/Array/JsonArray.hpp:7,
    from .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson.hpp:29,
    from .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson.h:9,
    from esp8266-fastled-webserver\common.h:33,
    from D:/src/esp8266-fastled-webserver_madmaxed/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:19:
    .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson/Variant/Converter.hpp:16:1: note: namespace ArduinoJson::V6213PA2::detail { }
    ARDUINOJSON_BEGIN_PRIVATE_NAMESPACE
    ^
    In file included from esp8266-fastled-webserver\common.h:56:0,
    from D:/src/esp8266-fastled-webserver_madmaxed/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:19:
    esp8266-fastled-webserver./include/simplehacks/array_size2.h:65:30: error: reference to 'detail' is ambiguous
    #define ARRAY_SIZE2(arr) detail::ARRAY_SIZE2_ARGUMENT_CANNOT_BE_POINTER(arr)
    ^
    D:/src/esp8266-fastled-webserver_madmaxed/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:235:30: note: in expansion of macro 'ARRAY_SIZE2'
    const uint8_t patternCount = ARRAY_SIZE2(patterns);
    ^
    esp8266-fastled-webserver./include/simplehacks/array_size2.h:58:5: note: candidates are: namespace detail { }
    {
    ^
    In file included from .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson/Variant/Converter.hpp:7:0,
    from .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson/Variant/VariantRefBase.hpp:8,
    from .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson/Array/ElementProxy.hpp:7,
    from .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson/Array/JsonArray.hpp:7,
    from .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson.hpp:29,
    from .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson.h:9,
    from esp8266-fastled-webserver\common.h:33,
    from D:/src/esp8266-fastled-webserver_madmaxed/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:19:
    .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson/Variant/Converter.hpp:16:1: note: namespace ArduinoJson::V6213PA2::detail { }
    ARDUINOJSON_BEGIN_PRIVATE_NAMESPACE
    ^
    In file included from esp8266-fastled-webserver\common.h:56:0,
    from D:/src/esp8266-fastled-webserver_madmaxed/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:19:
    esp8266-fastled-webserver./include/simplehacks/array_size2.h:65:30: error: reference to 'detail' is ambiguous
    #define ARRAY_SIZE2(arr) detail::ARRAY_SIZE2_ARGUMENT_CANNOT_BE_POINTER(arr)
    ^
    D:/src/esp8266-fastled-webserver_madmaxed/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:248:30: note: in expansion of macro 'ARRAY_SIZE2'
    const uint8_t paletteCount = ARRAY_SIZE2(palettes);
    ^
    esp8266-fastled-webserver./include/simplehacks/array_size2.h:58:5: note: candidates are: namespace detail { }
    {
    ^
    In file included from .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson/Variant/Converter.hpp:7:0,
    from .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson/Variant/VariantRefBase.hpp:8,
    from .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson/Array/ElementProxy.hpp:7,
    from .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson/Array/JsonArray.hpp:7,
    from .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson.hpp:29,
    from .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson.h:9,
    from esp8266-fastled-webserver\common.h:33,
    from D:/src/esp8266-fastled-webserver_madmaxed/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:19:
    .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson/Variant/Converter.hpp:16:1: note: namespace ArduinoJson::V6213PA2::detail { }
    ARDUINOJSON_BEGIN_PRIVATE_NAMESPACE
    ^
    In file included from esp8266-fastled-webserver\common.h:56:0,
    from D:/src/esp8266-fastled-webserver_madmaxed/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:19:
    esp8266-fastled-webserver./include/simplehacks/array_size2.h:65:30: error: reference to 'detail' is ambiguous
    #define ARRAY_SIZE2(arr) detail::ARRAY_SIZE2_ARGUMENT_CANNOT_BE_POINTER(arr)
    ^
    D:/src/esp8266-fastled-webserver_madmaxed/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:248:30: note: in expansion of macro 'ARRAY_SIZE2'
    const uint8_t paletteCount = ARRAY_SIZE2(palettes);
    ^
    esp8266-fastled-webserver./include/simplehacks/array_size2.h:58:5: note: candidates are: namespace detail { }
    {
    ^
    In file included from .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson/Variant/Converter.hpp:7:0,
    from .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson/Variant/VariantRefBase.hpp:8,
    from .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson/Array/ElementProxy.hpp:7,
    from .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson/Array/JsonArray.hpp:7,
    from .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson.hpp:29,
    from .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson.h:9,
    from esp8266-fastled-webserver\common.h:33,
    from D:/src/esp8266-fastled-webserver_madmaxed/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:19:
    .pio\libdeps\fastled_webserver__d1_mini\ArduinoJson\src/ArduinoJson/Variant/Converter.hpp:16:1: note: namespace ArduinoJson::V6213PA2::detail { }
    ARDUINOJSON_BEGIN_PRIVATE_NAMESPACE
    ^
    D:/src/esp8266-fastled-webserver_madmaxed/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:250:39: error: size of array 'paletteNames' is not an integral constant-expression
    const String paletteNames[paletteCount] = {
    ^
    D:/src/esp8266-fastled-webserver_madmaxed/esp8266-fastled-webserver/esp8266-fastled-webserver.ino:259:1: error: too many initializers for 'const String [1]'
    };
    ^
    *** [.pio\build\fastled_webserver__d1_mini\src\GradientPalettes.cpp.o] Error 1
    *** [.pio\build\fastled_webserver__d1_mini\src\esp8266-fastled-webserver.ino.cpp.o] Error 1
    ========================================================== [FAILED] Took 5.58 seconds ==========================================================
    Environment Status Duration

fastled_webserver__d1_mini FAILED 00:00:05.576
==================================================== 1 failed, 0 succeeded in 00:00:05.576 ====================================================

  • The terminal process "C:\Users\mxd.platformio\penv\Scripts\platformio.exe 'run', '--environment', 'fastled_webserver__d1_mini'" terminated with exit code: 1.
  • Terminal will be reused by tasks, press any key to close it.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions