m5stack / TimerCam-arduino

TimerCam Arduino Library
MIT License
45 stars 24 forks source link

capture.ino compile error #23

Open piaoxuebingfeng opened 2 months ago

piaoxuebingfeng commented 2 months ago

Describe the bug

In file included from c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\power_class.h:11, from c:\Users\qiao\Documents\Arduino\libraries\Timer-CAM\src/M5TimerCAM.h:4, from C:\Users\qiao\AppData\Local\Temp.arduinoIDE-unsaved2024522-21656-15nn7zj.wo4y\capture\capture.ino:14: c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:20:10: error: 'int8_t' in namespace 'std' does not name a type 20 | std::int8_t hours; | ^~ c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:21:10: error: 'int8_t' in namespace 'std' does not name a type 21 | std::int8_t minutes; | ^~ c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:22:10: error: 'int8_t' in namespace 'std' does not name a type 22 | std::int8_t seconds; | ^~ c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563Class.h:24:27: error: expected ')' before 'hours' 24 | rtc_time_t(std::int8t hours = -1, std::int8t minutes = -1, | ~ ^~~ | ) c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563Class.h:26:24: error: expected unqualified-id before ',' token 26 | : hours{hours}, minutes{minutes}, seconds{seconds} { | ^ c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563Class.h:26:43: error: expected unqualified-id before ',' token 26 | : hours{hours}, minutes{minutes}, seconds{seconds} { | ^ c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563Class.h:26:63: error: expected unqualified-id before '{' token 26 | : hours{hours}, minutes{minutes}, seconds{seconds} { | ^ c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h: In constructor 'rtc_time_t::rtc_time_t(const tm&)': c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:30:11: error: class 'rtc_time_t' does not have any field named 'hours' 30 | : hours{(int8_t)t.tm_hour}, | ^~~~~ c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:31:11: error: class 'rtc_time_t' does not have any field named 'minutes' 31 | minutes{(int8_t)t.tm_min}, | ^~~ c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:32:11: error: class 'rtc_time_t' does not have any field named 'seconds' 32 | seconds{(int8_t)t.tm_sec} { | ^~~ c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h: At global scope: c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:38:10: error: 'int16_t' in namespace 'std' does not name a type 38 | std::int16_t year; | ^~~ c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:41:10: error: 'int8_t' in namespace 'std' does not name a type 41 | std::int8_t month; | ^~ c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:44:10: error: 'int8_t' in namespace 'std' does not name a type 44 | std::int8_t date; | ^~ c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:47:10: error: 'int8_t' in namespace 'std' does not name a type 47 | std::int8_t weekDay; | ^~ c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563Class.h:49:28: error: expected ')' before 'year' 49 | rtc_date_t(std::int16t year = 2000, std::int8t month = 1, | ~ ^~ | ) c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563Class.h:51:22: error: expected unqualified-id before ',' token 51 | : year{year}, month{month}, date{date}, weekDay{weekDay_} { | ^ c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563Class.h:51:37: error: expected unqualified-id before ',' token 51 | : year{year}, month{month}, date{date}, weekDay{weekDay_} { | ^ c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563Class.h:51:50: error: expected unqualified-id before ',' token 51 | : year{year}, month{month}, date{date}, weekDay{weekDay_} { | ^ c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563Class.h:51:70: error: expected unqualified-id before '{' token 51 | : year{year}, month{month}, date{date}, weekDay{weekDay_} { | ^ c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h: In constructor 'rtc_date_t::rtc_date_t(const tm&)': c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:55:11: error: class 'rtc_date_t' does not have any field named 'year' 55 | : year{(int16_t)(t.tm_year + 1900)}, | ^~~~ c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:56:11: error: class 'rtc_date_t' does not have any field named 'month' 56 | month{(int8_t)(t.tm_mon + 1)}, | ^~~~~ c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:57:11: error: class 'rtc_date_t' does not have any field named 'date' 57 | date{(int8_t)t.tm_mday}, | ^~~~ c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:58:11: error: class 'rtc_date_t' does not have any field named 'weekDay' 58 | weekDay{(int8_t)t.tm_wday} { | ^~~ c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h: At global scope: c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:79:27: error: 'uint8_t' in namespace 'std' does not name a type 79 | static constexpr std::uint8_t DEFAULT_ADDRESS = 0x51; | ^~~ c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h: In member function 'rtc_time_t RTC8563_Class::getTime()': c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:135:20: error: no matching function for call to 'rtc_time_t::rtc_time_t()' 135 | rtc_time_t time; | ^~~~ c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:29:5: note: candidate: 'rtc_time_t::rtc_time_t(const tm&)' 29 | rtc_time_t(const tm& t) | ^~~~~~ c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:29:5: note: candidate expects 1 argument, 0 provided c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:19:32: note: candidate: 'constexpr rtc_time_t::rtc_time_t(const rtc_time_t&)' 19 | struct attribute((packed)) rtc_time_t { | ^~~~~~ c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:19:32: note: candidate expects 1 argument, 0 provided c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:19:32: note: candidate: 'constexpr rtc_time_t::rtc_time_t(rtc_time_t&&)' c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:19:32: note: candidate expects 1 argument, 0 provided c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h: In member function 'rtc_date_t RTC8563_Class::getDate()': c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:141:20: error: no matching function for call to 'rtc_date_t::rtc_date_t()' 141 | rtc_date_t date; | ^~~~ c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:54:5: note: candidate: 'rtc_date_t::rtc_date_t(const tm&)' 54 | rtc_date_t(const tm& t) | ^~~~~~ c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:54:5: note: candidate expects 1 argument, 0 provided c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:36:32: note: candidate: 'constexpr rtc_date_t::rtc_date_t(const rtc_date_t&)' 36 | struct attribute((packed)) rtc_date_t { | ^~~~~~ c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:36:32: note: candidate expects 1 argument, 0 provided c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:36:32: note: candidate: 'constexpr rtc_date_t::rtc_date_t(rtc_date_t&&)' c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:36:32: note: candidate expects 1 argument, 0 provided c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h: In member function 'rtc_datetime_t RTC8563_Class::getDateTime()': c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:147:24: error: use of deleted function 'rtc_datetime_t::rtc_datetime_t()' 147 | rtc_datetime_t res; | ^~~ c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:65:5: note: 'rtc_datetime_t::rtc_datetime_t()' is implicitly deleted because the default definition would be ill-formed: 65 | rtc_datetime_t() = default; | ^~~~~~ c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:65:5: error: no matching function for call to 'rtc_date_t::rtc_date_t()' c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:54:5: note: candidate: 'rtc_date_t::rtc_date_t(const tm&)' 54 | rtc_date_t(const tm& t) | ^~~~~~ c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:54:5: note: candidate expects 1 argument, 0 provided c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:36:32: note: candidate: 'constexpr rtc_date_t::rtc_date_t(const rtc_date_t&)' 36 | struct attribute((packed)) rtc_date_t { | ^~~~~~ c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:36:32: note: candidate expects 1 argument, 0 provided c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:36:32: note: candidate: 'constexpr rtc_date_t::rtc_date_t(rtc_date_t&&)' c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:36:32: note: candidate expects 1 argument, 0 provided c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:65:5: error: no matching function for call to 'rtc_time_t::rtc_time_t()' 65 | rtc_datetime_t() = default; | ^~~~~~ c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:29:5: note: candidate: 'rtc_time_t::rtc_time_t(const tm&)' 29 | rtc_time_t(const tm& t) | ^~~~~~ c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:29:5: note: candidate expects 1 argument, 0 provided c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:19:32: note: candidate: 'constexpr rtc_time_t::rtc_time_t(const rtc_time_t&)' 19 | struct attribute((packed)) rtc_time_t { | ^~~~~~ c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:19:32: note: candidate expects 1 argument, 0 provided c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:19:32: note: candidate: 'constexpr rtc_time_t::rtc_time_t(rtc_time_t&&)' c:\users\qiao\documents\arduino\libraries\timer-cam\src\utility\RTC8563_Class.h:19:32: note: candidate expects 1 argument, 0 provided

exit status 1

Compilation error: exit status 1

To reproduce

import TimerCam-arduino-1.0.0.zip in arduinoIDE-2.3.2 ,and then i compile capture.ino ,compile error.

Expected behavior

compile success

Screenshots

capture

Environment

Additional context

No response

Issue checklist

AaronPorts commented 1 month ago

Add #include <cstdint> to RTC8563_Class.h