fastLED-idf icon indicating copy to clipboard operation
fastLED-idf copied to clipboard

Build fails on latest version of esp-idf

Open playduck opened this issue 5 years ago • 2 comments

Running make menuconfig and subsequently make on this cloned repository using the latest esp-idf version (commit 39f090a) does not successfully build the project.

The following include headers are deprecated:

  • rom/ets_sys.h -> esp32/rom/ets_sys.h
  • esp_intr.h -> esp_intr_alloc.h
  • rom/gpio.h -> esp32/rom/gpio.h
  • rom/rtc.h -> esp32/rom/rtc.h
  • esp_intr.h -> esp_intr_alloc.h

However the actual compilation is terminated by numerous counts of the following Error:

In file included from /fastLED-idf/components/FastLED-idf/include/FastLED.h:58,
                 from /fastLED-idf/components/FastLED-idf/FastLED.cpp:2:
/fastLED-idf/components/FastLED-idf/include/colorutils.h: In copy constructor 'CHSVPalette16::CHSVPalette16(const CHSVPalette16&)':
/fastLED-idf/components/FastLED-idf/include/colorutils.h:455:69: error: 'void* memmove(void*, const void*, size_t)' writing to an object of type 'struct CHSV' with no trivial copy-assignment; use copy-assignment or copy-initialization instead [-Werror=class-memaccess]
         memmove8( &(entries[0]), &(rhs.entries[0]), sizeof( entries));
                                                                     ^
In file included from /fastLED-idf/components/FastLED-idf/include/controller.h:9,
                 from /fastLED-idf/components/FastLED-idf/include/FastLED.h:47,
                 from /fastLED-idf/components/FastLED-idf/FastLED.cpp:2:
/fastLED-idf/components/FastLED-idf/include/pixeltypes.h:23:8: note: 'struct CHSV' declared here
 struct CHSV {
        ^~~~

Removing -Wall and -Werror=all from /esp-idf/make/project.mk at line 370 lets the errors be treated as warnings and thus the compilation succeeds. However doing so isn't really addressing the underlying problem and probably pretty stupid.

playduck avatar Aug 18 '19 22:08 playduck

it worked perfect until last ESP-IDF update, now I get endless bootloop,

I (276) spi_flash: flash io: dio I (276) cpu_start: Starting scheduler on PRO CPU. I (0) cpu_start: Starting scheduler on APP CPU. Guru Meditation Error: Core 0 panic'ed (LoadProhibited). Exception was unhandled. Core 0 register dump: PC : 0x400e4671 PS : 0x00060f33 A0 : 0x800d29a2 A1 : 0x3ffb78d0 A2 : 0x00000000 A3 : 0x00000000 A4 : 0x00000020 A5 : 0x3ffb4e50 A6 : 0x3ffb6704 A7 : 0x400d32e8 A8 : 0x00000000 A9 : 0x3ffb78b0 A10 : 0x00000001 A11 : 0x00000000 A12 : 0x00000000 A13 : 0x01100002 A14 : 0x01100002 A15 : 0x00000000 SAR : 0x00000011 EXCCAUSE: 0x0000001c EXCVADDR: 0x00000000 LBEG : 0x00000000 LEND : 0x00000000 LCOUNT : 0x00000000

ELF file SHA256: 6b4eb7f7a8ff383df3b9da3d038a92f81f8a3f06358ef56200ec732107fe8574

Backtrace: 0x400e466e:0x3ffb78d0 0x400d299f:0x3ffb7900 0x400d25db:0x3ffb7940 0x400e2dd2:0x3ffb7980 0x400d3347:0x3ffb79b0 0x40087bad:0x3ffb79e0

Rebooting...

latest idf_v4.1-dev-1757-g826b9f6-dirty build

grooves38 avatar Jan 13 '20 12:01 grooves38

Despite all odds: It's working fine with idf 4.0.1 (the currently latest supported version on PlatformIO). I corrected the memmove warnings by exlicit casts.

kebner avatar Jul 21 '20 10:07 kebner