earlephilhower / ESP8266Audio

Arduino library to play MOD, WAV, FLAC, MIDI, RTTTL, MP3, and AAC files on I2S DACs or with a software emulated delta-sigma DAC on the ESP8266 and ESP32
GNU General Public License v3.0
2.01k stars 432 forks source link

platformio first compile error #525

Closed murarduino closed 2 years ago

murarduino commented 2 years ago

ENV: [env:pico32] platform = espressif32 board = pico32 framework = arduino lib_deps = earlephilhower/ESP8266Audio@^1.9.6

upload_port = COM4 monitor_port = COM4 monitor_speed = 115200

first compile error

Executing task in folder esp8266audio: C:\Users\luobin.platformio\penv\Scripts\platformio.exe run <

Processing pico32 (platform: espressif32; board: pico32; framework: arduino) ---------------------------------------------------------------------------------------------------------------------------------------------------------------Verbose mode can be enabled via -v, --verbose option CONFIGURATION: https://docs.platformio.org/page/boards/espressif32/pico32.html PLATFORM: Espressif 32 (4.2.0) > ESP32 Pico Kit HARDWARE: ESP32 240MHz, 320KB RAM, 4MB Flash DEBUG: Current (cmsis-dap) External (cmsis-dap, esp-prog, iot-bus-jtag, jlink, minimodule, olimex-arm-usb-ocd, olimex-arm-usb-ocd-h, olimex-arm-usb-tiny-h, olimex-jtag-tiny, tumpa) PACKAGES:

: note: this is the location of the previous definition Compiling .pio\build\pico32\libfa1\ESP8266Audio\AudioFileSourceID3.cpp.o Compiling .pio\build\pico32\libfa1\ESP8266Audio\AudioFileSourcePROGMEM.cpp.o Archiving .pio\build\pico32\lib4d7\libSD.a Compiling .pio\build\pico32\libfa1\ESP8266Audio\AudioFileSourceSD.cpp.o Compiling .pio\build\pico32\libfa1\ESP8266Audio\AudioFileSourceSPIRAMBuffer.cpp.o Compiling .pio\build\pico32\libfa1\ESP8266Audio\AudioFileSourceSTDIO.cpp.o Compiling .pio\build\pico32\libfa1\ESP8266Audio\AudioFileStream.cpp.o Compiling .pio\build\pico32\libfa1\ESP8266Audio\AudioGeneratorAAC.cpp.o Compiling .pio\build\pico32\libfa1\ESP8266Audio\AudioGeneratorFLAC.cpp.o Compiling .pio\build\pico32\libfa1\ESP8266Audio\AudioGeneratorMIDI.cpp.o Compiling .pio\build\pico32\libfa1\ESP8266Audio\AudioGeneratorMOD.cpp.o Compiling .pio\build\pico32\libfa1\ESP8266Audio\AudioGeneratorMP3.cpp.o Compiling .pio\build\pico32\libfa1\ESP8266Audio\AudioGeneratorMP3a.cpp.o Compiling .pio\build\pico32\libfa1\ESP8266Audio\AudioGeneratorOpus.cpp.o Compiling .pio\build\pico32\libfa1\ESP8266Audio\AudioGeneratorRTTTL.cpp.o Compiling .pio\build\pico32\libfa1\ESP8266Audio\AudioGeneratorTalkie.cpp.o Compiling .pio\build\pico32\libfa1\ESP8266Audio\AudioGeneratorWAV.cpp.o In file included from .pio/libdeps/pico32/ESP8266Audio/src/AudioGeneratorMIDI.cpp:65: .pio/libdeps/pico32/ESP8266Audio/src/libtinysoundfont/tsf.h: In function 'void tsf_channel_midi_control(tsf*, int, int, int)': .pio/libdeps/pico32/ESP8266Audio/src/libtinysoundfont/tsf.h:2100:1: error: insn does not satisfy its constraints: } ^ (insn 858 343 344 51 (set (reg:SF 19 f0 [407]) (mem/u/c:SF (symbol_ref/u:SI ("*.LC248") [flags 0x2]) [0 S4 A32])) ".pio/libdeps/pico32/ESP8266Audio/src/libtinysoundfont/tsf.h":2053 47 {movsf_internal} (nil)) during RTL pass: postreload .pio/libdeps/pico32/ESP8266Audio/src/libtinysoundfont/tsf.h:2100:1: internal compiler error: in extract_constrain_insn, at recog.c:2210 libbacktrace could not find executable to open Please submit a full bug report, with preprocessed source if appropriate. See for instructions. Compiling .pio\build\pico32\libfa1\ESP8266Audio\AudioLogger.cpp.o *** [.pio\build\pico32\libfa1\ESP8266Audio\AudioGeneratorMIDI.cpp.o] Error 1 platformio display Error : [{ "resource": "/e:/Documents/PlatformIO/Projects/esp8266audio/.pio/libdeps/pico32/ESP8266Audio/src/libtinysoundfont/tsf.h", "owner": "cpp", "severity": 8, "message": "insn does not satisfy its constraints:", "startLineNumber": 2100, "startColumn": 1, "endLineNumber": 2100, "endColumn": 1 }]
thire66 commented 2 years ago

@murarduino Got yesterday the same problem. See https://github.com/earlephilhower/ESP8266Audio/pull/502, this helps a lot.

murarduino commented 2 years ago

Thanks for the tip, but I still don't quite get it. As #502 said, it is the version of GCC, but how to check the version of gcc in platformio? How should I go about upgrading it?

earlephilhower commented 2 years ago

Espressif has no newer version available for you. The 8.x version has a bug in the code generator, so there's nothing we can do here. The latest version of the library has the PR you linked to which disables the MIDI code, so just make sure you're running the latest version (1.9.7) of ESP8266Audio and you're set.