Closed
Description
First - thank you for your great library
with latest esp8266 core GIT compilation failed with sample like UTFT_demo.ino
, no issue on ESP32.
It seems due to this recent commit :
esp8266/Arduino@885276e
It is out of my knowledge to know why they did this but may be the library need some update to handle this.
Compiling library "TFT_eSPI"
"C:\\Users\\user\\Documents\\Arduino\\hardware\\esp8266com\\esp8266/tools/xtensa-lx106-elf/bin/xtensa-lx106-elf-g++" -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ "-IC:\\Users\\user\\Documents\\Arduino\\hardware\\esp8266com\\esp8266/tools/sdk/include" "-IC:\\Users\\user\\Documents\\Arduino\\hardware\\esp8266com\\esp8266/tools/sdk/lwip2/include" "-IC:\\Users\\user\\Documents\\Arduino\\hardware\\esp8266com\\esp8266/tools/sdk/libc/xtensa-lx106-elf/include" "-IC:\\Users\\user\\AppData\\Local\\Temp\\arduino_build_134255/core" -c -w -Os -g -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=c++11 -MMD -ffunction-sections -fdata-sections -fno-exceptions -DNONOSDK221=1 -DF_CPU=160000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10809 -DARDUINO_ESP8266_GENERIC -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_GENERIC\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -DESP8266 "-IC:\\Users\\user\\Documents\\Arduino\\hardware\\esp8266com\\esp8266\\cores\\esp8266" "-IC:\\Users\\user\\Documents\\Arduino\\hardware\\esp8266com\\esp8266\\variants\\generic" "-IC:\\Users\\user\\Documents\\Arduino\\hardware\\esp8266com\\esp8266\\libraries\\SPI" "-IC:\\Users\\user\\Documents\\Arduino\\libraries\\TFT_eSPI" "C:\\Users\\user\\Documents\\Arduino\\libraries\\TFT_eSPI\\TFT_eSPI.cpp" -o "C:\\Users\\user\\AppData\\Local\\Temp\\arduino_build_134255\\libraries\\TFT_eSPI\\TFT_eSPI.cpp.o"
In file included from C:\Users\user\Documents\Arduino\hardware\esp8266com\esp8266\cores\esp8266/pgmspace.h:7:0,
from C:\Users\user\Documents\Arduino\libraries\TFT_eSPI/Fonts/glcdfont.c:6,
from C:\Users\user\Documents\Arduino\libraries\TFT_eSPI\TFT_eSPI.h:62,
from C:\Users\user\Documents\Arduino\libraries\TFT_eSPI\TFT_eSPI.cpp:17:
C:\Users\user\Documents\Arduino\libraries\TFT_eSPI\TFT_eSPI.cpp: In member function 'virtual int16_t TFT_eSPI::drawChar(uint16_t, int32_t, int32_t, uint8_t)':
C:\Users\user\Documents\Arduino\libraries\TFT_eSPI\TFT_eSPI.cpp:4273:84: error: invalid conversion from 'uint32_t {aka unsigned int}' to 'const void*' [-fpermissive]
flash_address = pgm_read_dword( pgm_read_dword( &(fontdata[font].chartbl ) ) + uniCode*sizeof(void *) );
^
C:\Users\user\Documents\Arduino\hardware\esp8266com\esp8266/tools/sdk/libc/xtensa-lx106-elf/include/sys/pgmspace.h:114:57: note: in definition of macro 'pgm_read_dword'
#define pgm_read_dword(a) pgm_read_dword_unaligned(a)
^
C:\Users\user\Documents\Arduino\hardware\esp8266com\esp8266/tools/sdk/libc/xtensa-lx106-elf/include/sys/pgmspace.h:85:72: error: initializing argument 1 of 'uint32_t pgm_read_dword_unaligned(const void*)' [-fpermissive]
__attribute__((optimize("-O3"), always_inline)) static inline uint32_t pgm_read_dword_unaligned(const void *addr) {
^
C:\Users\user\Documents\Arduino\libraries\TFT_eSPI\Extensions/Sprite.cpp: In member function 'virtual int16_t TFT_eSprite::drawChar(uint16_t, int32_t, int32_t, uint8_t)':
C:\Users\user\Documents\Arduino\libraries\TFT_eSPI\Extensions/Sprite.cpp:1682:84: error: invalid conversion from 'uint32_t {aka unsigned int}' to 'const void*' [-fpermissive]
flash_address = pgm_read_dword( pgm_read_dword( &(fontdata[font].chartbl ) ) + uniCode*sizeof(void *) );
^
C:\Users\user\Documents\Arduino\hardware\esp8266com\esp8266/tools/sdk/libc/xtensa-lx106-elf/include/sys/pgmspace.h:114:57: note: in definition of macro 'pgm_read_dword'
#define pgm_read_dword(a) pgm_read_dword_unaligned(a)
^
C:\Users\user\Documents\Arduino\hardware\esp8266com\esp8266/tools/sdk/libc/xtensa-lx106-elf/include/sys/pgmspace.h:85:72: error: initializing argument 1 of 'uint32_t pgm_read_dword_unaligned(const void*)' [-fpermissive]
__attribute__((optimize("-O3"), always_inline)) static inline uint32_t pgm_read_dword_unaligned(const void *addr) {
^