32bit board with LPC1768, support marlin2.0 and smoothieware, support lcd2004/12864, On-board TMC2130 SPI interface and TMC2208 UART interface no additional wiring is required
1.01k
stars
1.15k
forks
source link
Marlin 2.0 build Fails with problem in duration_t.h #563
[{
"resource": "/c:/Printing/Marlin 2.0/Marlin-2.0.x-SKR-V1.4-Turbo/Marlin/src/libs/duration_t.h",
"owner": "cpp",
"severity": 4,
"message": "'sprintf' may write a terminating nul past the end of the destination [-Wformat-overflow=]",
"startLineNumber": 130,
"startColumn": 35,
"endLineNumber": 130,
"endColumn": 35
}]
Below is the terminal output:
In file included from Marlin\src\gcode\stats../../inc/../HAL/./LPC1768/../shared/Marduino.h:36,
from Marlin\src\gcode\stats../../inc/../HAL/./LPC1768/HAL.h:39,
from Marlin\src\gcode\stats../../inc/../HAL/HAL.h:26,
from Marlin\src\gcode\stats../../inc/MarlinConfig.h:30,
from Marlin\src\gcode\stats../gcode.h:294,
from Marlin\src\gcode\stats\M31.cpp:23:
Marlin\src\gcode\stats../../module/../libs/duration_t.h: In static member function 'static void GcodeSuite::M31()':
Marlin\src\gcode\stats../../module/../libs/duration_t.h:130:35: warning: 'sprintf' may write a terminating nul past the end of the destination [-Wformat-overflow=]
130 | if (y) sprintf_P(buffer, PSTR("%iy %id %ih %im %is"), y, d, h, m, s);
C:\Users\stephen.platformio\packages\framework-arduino-lpc176x\cores\arduino/Arduino.h:58:18: note: in definition of macro 'PSTR'
58 | #define PSTR(v) (v)
| ^
In file included from Marlin\src\gcode\stats../../module/printcounter.h:25,
from Marlin\src\gcode\stats\M31.cpp:25:
Marlin\src\gcode\stats../../module/../libs/duration_t.h:130:21: note: 'sprintf' output between 15 and 22 bytes into a destination of size 21
130 | if (y) sprintf_P(buffer, PSTR("%iy %id %ih %im %is"), y, d, h, m, s);
Compiling .pio\build\LPC1769\src\src\lcd\dogm\status_screen_DOGM.cpp.o
Compiling .pio\build\LPC1769\src\src\lcd\dogm\status_screen_lite_ST7920.cpp.o
Compiling .pio\build\LPC1769\src\src\lcd\dogm\u8g_dev_ssd1306_sh1106_128x64_I2C.cpp.o
Compiling .pio\build\LPC1769\src\src\lcd\dogm\u8g_dev_st7565_64128n_HAL.cpp.o
Compiling .pio\build\LPC1769\src\src\lcd\dogm\u8g_dev_st7920_128x64_HAL.cpp.o
Compiling .pio\build\LPC1769\src\src\lcd\dogm\u8g_dev_tft_320x240_upscale_from_128x64.cpp.o
Compiling .pio\build\LPC1769\src\src\lcd\dogm\u8g_dev_uc1701_mini12864_HAL.cpp.o
Compiling .pio\build\LPC1769\src\src\lcd\dogm\u8g_fontutf8.cpp.o
Compiling .pio\build\LPC1769\src\src\lcd\dogm\ultralcd_DOGM.cpp.o
Compiling .pio\build\LPC1769\src\src\lcd\dogm\ultralcd_st7920_u8glib_rrd_AVR.cpp.o
Compiling .pio\build\LPC1769\src\src\lcd\extui\anycubic_chiron_lcd.cpp.o
Compiling .pio\build\LPC1769\src\src\lcd\extui\anycubic_i3mega_lcd.cpp.o
Compiling .pio\build\LPC1769\src\src\lcd\extui\ui_api.cpp.o
Compiling .pio\build\LPC1769\src\src\lcd\fontutils.cpp.o
Compiling .pio\build\LPC1769\src\src\lcd\lcdprint.cpp.o
Compiling .pio\build\LPC1769\src\src\lcd\menu\menu.cpp.o
Compiling .pio\build\LPC1769\src\src\lcd\menu\menu_advanced.cpp.o
Compiling .pio\build\LPC1769\src\src\lcd\menu\menu_configuration.cpp.o
Compiling .pio\build\LPC1769\src\src\lcd\menu\menu_custom.cpp.o
Compiling .pio\build\LPC1769\src\src\lcd\menu\menu_game.cpp.o
Compiling .pio\build\LPC1769\src\src\lcd\menu\menu_main.cpp.o
Compiling .pio\build\LPC1769\src\src\lcd\menu\menu_media.cpp.o
Compiling .pio\build\LPC1769\src\src\lcd\menu\menu_mixer.cpp.o
Compiling .pio\build\LPC1769\src\src\lcd\menu\menu_motion.cpp.o
Compiling .pio\build\LPC1769\src\src\lcd\menu\menu_temperature.cpp.o
Compiling .pio\build\LPC1769\src\src\lcd\menu\menu_tmc.cpp.o
In file included from c:\users\stephen.platformio\packages\toolchain-gccarmnoneeabi\arm-none-eabi\include\c++\10.3.1\functional:56,
from c:\users\stephen.platformio\packages\toolchain-gccarmnoneeabi\arm-none-eabi\include\c++\10.3.1\pstl\glue_algorithm_defs.h:13,
from c:\users\stephen.platformio\packages\toolchain-gccarmnoneeabi\arm-none-eabi\include\c++\10.3.1\algorithm:74,
from Marlin\src\lcd../inc/../HAL/./LPC1768/HAL.h:35,
from Marlin\src\lcd../inc/../HAL/HAL.h:26,
from Marlin\src\lcd../inc/MarlinConfig.h:30,
from Marlin\src\lcd\lcdprint.h:35,
from Marlin\src\lcd\lcdprint.cpp:31:
c:\users\stephen.platformio\packages\toolchain-gccarmnoneeabi\arm-none-eabi\include\c++\10.3.1\bits\functional_hash.h:168:3: error: redefinition of 'struct std::hash'
168 | _Cxx_hashtable_define_trivial_hash(unsigned long)
| ^~~~~~~~~~
c:\users\stephen.platformio\packages\toolchain-gccarmnoneeabi\arm-none-eabi\include\c++\10.3.1\bits\functional_hash.h:136:3: note: previous definition of 'struct std::hash'
136 | _Cxx_hashtable_define_trivial_hash(wchar_t)
| ^~~~~~~~~~
Compiling .pio\build\LPC1769\src\src\lcd\menu\menu_tune.cpp.o
*** [.pio\build\LPC1769\src\src\lcd\lcdprint.cpp.o] Error 1
It was big tree tech's marlin 2.0.6. I just reconfigured Vanilla marlin from scratch for it and it compiled. must be something in Platformio's latest build that doesn't play nice with that version.
Build and get the following error:
[{ "resource": "/c:/Printing/Marlin 2.0/Marlin-2.0.x-SKR-V1.4-Turbo/Marlin/src/libs/duration_t.h", "owner": "cpp", "severity": 4, "message": "'sprintf' may write a terminating nul past the end of the destination [-Wformat-overflow=]", "startLineNumber": 130, "startColumn": 35, "endLineNumber": 130, "endColumn": 35 }]
Below is the terminal output:
In file included from Marlin\src\gcode\stats../../inc/../HAL/./LPC1768/../shared/Marduino.h:36, from Marlin\src\gcode\stats../../inc/../HAL/./LPC1768/HAL.h:39, from Marlin\src\gcode\stats../../inc/../HAL/HAL.h:26, from Marlin\src\gcode\stats../../inc/MarlinConfig.h:30, from Marlin\src\gcode\stats../gcode.h:294, from Marlin\src\gcode\stats\M31.cpp:23: Marlin\src\gcode\stats../../module/../libs/duration_t.h: In static member function 'static void GcodeSuite::M31()': Marlin\src\gcode\stats../../module/../libs/duration_t.h:130:35: warning: 'sprintf' may write a terminating nul past the end of the destination [-Wformat-overflow=] 130 | if (y) sprintf_P(buffer, PSTR("%iy %id %ih %im %is"), y, d, h, m, s); C:\Users\stephen.platformio\packages\framework-arduino-lpc176x\cores\arduino/Arduino.h:58:18: note: in definition of macro 'PSTR' 58 | #define PSTR(v) (v) | ^ In file included from Marlin\src\gcode\stats../../module/printcounter.h:25, from Marlin\src\gcode\stats\M31.cpp:25: Marlin\src\gcode\stats../../module/../libs/duration_t.h:130:21: note: 'sprintf' output between 15 and 22 bytes into a destination of size 21 130 | if (y) sprintf_P(buffer, PSTR("%iy %id %ih %im %is"), y, d, h, m, s); Compiling .pio\build\LPC1769\src\src\lcd\dogm\status_screen_DOGM.cpp.o Compiling .pio\build\LPC1769\src\src\lcd\dogm\status_screen_lite_ST7920.cpp.o Compiling .pio\build\LPC1769\src\src\lcd\dogm\u8g_dev_ssd1306_sh1106_128x64_I2C.cpp.o Compiling .pio\build\LPC1769\src\src\lcd\dogm\u8g_dev_st7565_64128n_HAL.cpp.o Compiling .pio\build\LPC1769\src\src\lcd\dogm\u8g_dev_st7920_128x64_HAL.cpp.o Compiling .pio\build\LPC1769\src\src\lcd\dogm\u8g_dev_tft_320x240_upscale_from_128x64.cpp.o Compiling .pio\build\LPC1769\src\src\lcd\dogm\u8g_dev_uc1701_mini12864_HAL.cpp.o Compiling .pio\build\LPC1769\src\src\lcd\dogm\u8g_fontutf8.cpp.o Compiling .pio\build\LPC1769\src\src\lcd\dogm\ultralcd_DOGM.cpp.o Compiling .pio\build\LPC1769\src\src\lcd\dogm\ultralcd_st7920_u8glib_rrd_AVR.cpp.o Compiling .pio\build\LPC1769\src\src\lcd\extui\anycubic_chiron_lcd.cpp.o Compiling .pio\build\LPC1769\src\src\lcd\extui\anycubic_i3mega_lcd.cpp.o Compiling .pio\build\LPC1769\src\src\lcd\extui\ui_api.cpp.o Compiling .pio\build\LPC1769\src\src\lcd\fontutils.cpp.o Compiling .pio\build\LPC1769\src\src\lcd\lcdprint.cpp.o Compiling .pio\build\LPC1769\src\src\lcd\menu\menu.cpp.o Compiling .pio\build\LPC1769\src\src\lcd\menu\menu_advanced.cpp.o Compiling .pio\build\LPC1769\src\src\lcd\menu\menu_configuration.cpp.o Compiling .pio\build\LPC1769\src\src\lcd\menu\menu_custom.cpp.o Compiling .pio\build\LPC1769\src\src\lcd\menu\menu_game.cpp.o Compiling .pio\build\LPC1769\src\src\lcd\menu\menu_main.cpp.o Compiling .pio\build\LPC1769\src\src\lcd\menu\menu_media.cpp.o Compiling .pio\build\LPC1769\src\src\lcd\menu\menu_mixer.cpp.o Compiling .pio\build\LPC1769\src\src\lcd\menu\menu_motion.cpp.o Compiling .pio\build\LPC1769\src\src\lcd\menu\menu_temperature.cpp.o Compiling .pio\build\LPC1769\src\src\lcd\menu\menu_tmc.cpp.o In file included from c:\users\stephen.platformio\packages\toolchain-gccarmnoneeabi\arm-none-eabi\include\c++\10.3.1\functional:56, from c:\users\stephen.platformio\packages\toolchain-gccarmnoneeabi\arm-none-eabi\include\c++\10.3.1\pstl\glue_algorithm_defs.h:13, from c:\users\stephen.platformio\packages\toolchain-gccarmnoneeabi\arm-none-eabi\include\c++\10.3.1\algorithm:74, from Marlin\src\lcd../inc/../HAL/./LPC1768/HAL.h:35, from Marlin\src\lcd../inc/../HAL/HAL.h:26, from Marlin\src\lcd../inc/MarlinConfig.h:30, from Marlin\src\lcd\lcdprint.h:35, from Marlin\src\lcd\lcdprint.cpp:31: c:\users\stephen.platformio\packages\toolchain-gccarmnoneeabi\arm-none-eabi\include\c++\10.3.1\bits\functional_hash.h:168:3: error: redefinition of 'struct std::hash'
168 | _Cxx_hashtable_define_trivial_hash(unsigned long)
| ^'
136 | _Cxx_hashtable_define_trivial_hash(wchar_t)
| ^
~~~~~~~~~ c:\users\stephen.platformio\packages\toolchain-gccarmnoneeabi\arm-none-eabi\include\c++\10.3.1\bits\functional_hash.h:136:3: note: previous definition of 'struct std::hash~~~~~~~~~ Compiling .pio\build\LPC1769\src\src\lcd\menu\menu_tune.cpp.o *** [.pio\build\LPC1769\src\src\lcd\lcdprint.cpp.o] Error 1