Ошибка компиляции Platformio: ArduinoJson6100_100 :: DynamicJsonDocument не имеет члена с именем nestingLimit - PullRequest
0 голосов
/ 30 марта 2019

Я новичок в c ++ и пытаюсь скомпилировать простой проект arduino в Platformio.

файл platformio.ini:

    [platformio]
src_dir = .
lib_extra_dirs = .piolibdeps/, ../../

[env:nodemcuv2]
platform = espressif8266
board = nodemcuv2
framework = arduino
lib_deps = 
#    PubSubClient
    painlessMesh

файл main.ino:

#include <Arduino.h>
#include <painlessMesh.h>
void setup()
{
}

void loop()
{
}

Должно быть что-то простое, но я получаю следующую ошибку:

'ArduinoJson6100_100 :: DynamicJsonDocument' не имеет члена с именем 'nestingLimit'

Полныйстек компилятора:

Выполнение задачи в папке test4: запуск платформы <</p>

Обработка nodemcuv2 (платформа: espressif8266; плата: nodemcuv2; платформа: arduino) ----------------------------------------------------------------------------------------------------------- Подробный режим можно включить с помощью опции -v, --verbose. КОНФИГУРАЦИЯ: https://docs.platformio.org/page/boards/espressif8266/nodemcuv2.html ПЛАТФОРМА: Espressif 8266> NodeMCU 1.0 (модуль ESP-12E). ОБОРУДОВАНИЕ: ESP8266, 80 МГц, 80 КБ, RAM (4 МБ, флэш).Библиотека ino Dependency Finder -> LDF MODES: FINDER (цепочка) СОВМЕСТИМОСТЬ (мягкая) Собирает 35 совместимых библиотек Сканирование зависимостей ... График зависимостей | -- 1.3.0 |
| - 6.10.0 || - 3.0.2 || - 1.2.0 ||| - 1,0 || - 1.0 Компиляция .pioenvs / nodemcuv2 / src / main.ino.cpp.o Генерация сценария LD .pioenvs / nodemcuv2 / ld / local.eagle.app.v6.common.ld Архивация .pioenvs / nodemcuv2 / libef5 / libArduinoJson_ID64.a. АрхивацияКомпиляцияlib6c2 / ESP8266WiFi / ESP8266WiFiGeneric.cpp.o Компиляция .pioenvs / nodemcuv2 / lib6c2 / ESP8266WiFi / ESP8266WiFiMulti.cpp.o Компиляция .pioenvs / nodemcuv2 / lib6c2 / ESPi.WiWiWSW2/ESP8266WiFiSTA.cpp.o Компиляция .pioenvs / nodemcuv2 / lib6c2 / ESP8266WiFi / ESP8266WiFiScan.cpp.o Компиляцияing .pioenvs / nodemcuv2 / lib6c2 / ESP8266WiFi / WiFiClient.cpp.o Компиляция .pioenvs / nodemcuv2 / lib6c2 / ESP8266WiFi / WiFiClientSecureAxTLS.cpp.o Компиляция .pioenvs / nodemcuv2./lib6c2/ESP8266WiFi/WiFiServer.cpp.o Компиляция .pioenvs / nodemcuv2 / lib6c2 / ESP8266WiFi / WiFiServerSecureAxTLS.cpp.o Компиляция .pioenvs / nodemcuv2 / lib6c2 / ESP82sv2WiFiUdp.cpp.o. КомпиляцияАрхивированиеКомпиляция .pioenvs / nodemcuv2 / lib3f1 / painlessMesh_ID1269 / TaskScheduler.cpp.o Компиляция .pioenvs / nodemcuv2 / lib3f1 / painlessMesh_ID1269 / painlessMesh.cpp.o Компиляция .pioenvs / nodemcuv2 / lib3f1 / painlessMesh_ID1269 / painlessMio.jpg.jp.pioenvs / nodemcuv2 / lib129 / libESPAsyncTCP_ID305.a Сборка .pioenvs / nodemcuv2 / lib3f1 / painlessMesh_ID1269 / painlessMeshComm.cpp.o Сборка .pioenvs / nodemcuv2 / lib3f1 / painlessMesh_ID1269 / painlessMeshConnection.cpp.o Сборка .pioenvs / nodemcuv2 / lib3f1 / painlessMesh_ID1269 / painlessMeshDebug.cpp.o Компиляция .pioenvs / nodemcuv2 / lib3f1 / painlessMesh_ID1269 / painlessMeshJson.cpp.o .piolibdeps / painlessMesh_ID1269 / src / painlessMeshComm.cpp: в элементефункция 'String painlessMesh :: buildMeshPackage (uint32_t, uint32_t, meshPackageType, String &)': .piolibdeps / painlessMesh_ID1269 / src / painlessMeshComm.cpp: 68: 25: ошибка: отсутствует соответствующая функция для вызова Ar_mentmentJJ:) 'DynamicJsonDocument jsonBuffer;^src / ArduinoJson.hpp: 21, из .piolibdeps / ArduinoJson_ID64 / src / ArduinoJson.h: 9, из .piolibdeps / painlessMesh_ID1269 / src / painlessMesh.h: 12, из .piolibdeps / painlessMesh_cmc.:piolibdeps / ArduinoJson_ID64 / src / ArduinoJson / Document / BasicJsonDocument.hpp: 50: 3: примечание: кандидат ожидает 1 аргумент, предоставляется 0:: BasicJsonDocument :: BasicJsonDocumentpename ArduinoJson6100_100 :: enable_if :: value> :: type *) BasicJsonDocument (const T & src, ^ .piolibdeps / ArduinoJson_ID64 / src / ArduinoJson / Document / BasicJsonDocument.hpp: 43: 3: примечание: сбой вывода / замены аргумента шаблона:.piolibdeps / painlessMesh_ID1269 / src / painlessMeshComm.cpp: 68: 25: примечание: кандидат ожидает 2 аргумента, при условии 0 DynamicJsonDocument jsonBuffer;^ В файле, включенном в .piolibdeps / ArduinoJson_ID64 / src / ArduinoJson / Document / DynamicJsonDocument.hpp: 7: 0, из .piolibdeps / ArduinoJson_ID64 / src / ArduinoJson.hpp: 21, из .piolibdeps / ArduinoJson_h :64: sd9:: ArduinoJson6100_100 :: BasicJsonDocument :: BasicJsonDocument (const ArduinoJson6100_100 :: BasicJsonDocument &) [с TAllocator = ArduinoJson6100_100 :: DefaultAllocator] BasicJsonDocument (const BasicJsonDocument & src) Аргумент_JD::примечание: кандидат ожидает 1 аргумент, при условии 0;size_t = unsigned int] явный BasicJsonDocument (size_t capa, распределитель TAllocator = TAllocator ()) ^ .piolibdeps / ArduinoJson_ID64 / src / ArduinoJson / Document / BasicJsonDocument.hpp: 33: 12: примечание: кандидат ожидает 2 аргумента, при условии 0 .piolibdepspainlessMesh_ID1269 / src / painlessMeshConnection.cpp: в функции-члене 'void MeshConnection :: handleMessage (String &, uint32_t)': .piolibdeps / painlessMesh_ID1269 / src / painlessMeshConnection.cpp: функция 543: 25J: для поиска: ошибка: отсутствует: BasicJsonDocument :: BasicJsonDocument () 'DynamicJsonDocument jsonBuffer;^src / ArduinoJson.hpp: 21, из .piolibdeps / ArduinoJson_ID64 / src / ArduinoJson.h: 9, из .piolibdeps / painlessMesh_ID1269 / src / painlessMesh.h: 12, из .piolibdeps / painlessMesh_cnec..piolibdeps / ArduinoJson_ID64 / src / ArduinoJson / Document / BasicJsonDocument.hpp: 50: 3: note:ArduinoJson6100_100 :: BasicJsonDocument :: BasicJsonDocument (ArduinoJson6100_100 :: VariantRef) [с TAllocator = ArduinoJson6100_100 :: DefaultAllocator] BasicJsonDocument (VariantRef Src)ожидает 1 аргумент, при условии 0 .piolibdeps / ArduinoJson_ID64 / src / ArduinoJson / Document / BasicJsonDocument.hpp: 43: 3: примечание: шаблон ArduinoJson6100_100 :: BasicJsonDocument :: BasicJsonDocument (const T &, имя типа ArduinoJson6100_100 :: enable_тип *) BasicJsonDocument (const T & src, ^ .piolibdeps / ArduinoJson_ID64 / src / ArduinoJson / Document / BasicJsonDocument.hpp: 43: 3: примечание: сбой вывода / замены аргумента шаблона: .piolibdeps / painlessMesh_ID1269 / srcpp.conc.less / 54.lessc.less: 25: примечание: кандидат ожидает 2 аргумента, 0 предоставлено DynamicJsonDocument jsonBuffer; ^ В файле, включенном из .piolibdeps / ArduinoJson_ID64 / src / ArduinoJson / Document / DynamicJsonDocument.hpp: 7: 0, из .piolibdeps / ArduinoJson_ID64 / src / ArduinoJson.hpp: 21, из .piolibdeps / ArduinoJson_ID64 / src / ArduinoJson.h: 9, из .piolibdeps / painlessMesh_ID1269 / src / painlessMesh.h: 12, из .piolibdeps / painlessMesh_ID12ction.scr: 9:^ .piolibdeps / ArduinoJson_ID64 / src / ArduinoJson / Document / BasicJsonDocument.hpp: 36: 3: примечание: кандидат ожидает 1 аргумент, при условии 0 .piolibdeps / ArduinoJson_ID64 / src / ArduinoJson / Document / BasicJsonDocument.hpp: 33: 12: note:ArduinoJson6100_100 :: BasicJsonDocument :: BasicJsonDocument (size_t, TAllocator) [с TAllocator = ArduinoJson6100_100 :: DefaultAllocator;size_t = unsigned int] явный BasicJsonDocument (size_t capa, распределитель TAllocator = TAllocator ()) ^ .piolibdeps / ArduinoJson_ID64 / src / ArduinoJson / Document / BasicJsonDocument.hpp: 33: 12: примечание: кандидат ожидает 2 аргумента, при условии 0 .piolibdepspainlessMesh_ID1269 / src / painlessMeshConnection.cpp: 544: 16: ошибка: «ArduinoJson6100_100 :: DynamicJsonDocument» не имеет члена с именем «nestingLimit» jsonBuffer.nestingLimit = 255;^ * [.pioenvs / nodemcuv2 / lib3f1 / painlessMesh_ID1269 / painlessMeshComm.cpp.o] Ошибка 1 * [.pioenvs / nodemcuv2 / lib3f1 / painlessMesh_ID1269 / painlessMeshConnection.cpp.]=================================== [ОШИБКА] Потребовалось 10,54 секунды ======================================== Процесс терминала завершился с кодом выхода: 1

Чтоя делаю не так?

Спасибо!

1 Ответ

0 голосов
/ 01 апреля 2019

Решено в библиотеке источник: https://gitlab.com/painlessMesh/painlessMesh/issues/253

Комментарий автора:

Спасибо за сообщение.Это должно быть исправлено в последней версии (1.3.1).Дайте мне знать, если у вас все еще есть проблемы

...