feat(build): 优化构建配置并引入日志分级系统
- 将优化级别从balanced调整为size,减少Flash占用 - 添加hardfault.cpp文件以增强故障诊断能力 - 关闭RTTI和异常处理以移除libcppabi运行时(节省约2.5KB Flash) - 添加链接器参数输出未引用段与总量报告用于Flash尺寸分析 refactor(logging): 统一日志输出并实现编译时日志分级 - 将printf调用替换为模块化的日志宏(ECAT_LOGI、CAN_LOGI等) - 实现CONFIG_*_LOG_ENABLE编译开关控制各模块INFO级日志 - 错误和关键事件使用LOG_ERR恒定保留,其他日志可编译时裁剪 - 保持原有日志内容不变,但支持链接器自动回收未使用的格式字符串
This commit is contained in:
@@ -22,6 +22,7 @@ project:
|
||||
- file: ./sys/aes128.cpp
|
||||
- file: ./sys/motor_ota_relay.h
|
||||
- file: ./sys/motor_ota_relay.cpp
|
||||
- file: ./sys/hardfault.cpp
|
||||
- file: ./sys/cpp_stubs.cpp
|
||||
- file: ./sys/config.h
|
||||
- group: device
|
||||
@@ -123,6 +124,9 @@ project:
|
||||
- -std=gnu11
|
||||
CPP:
|
||||
- -std=gnu++17
|
||||
# 全工程零使用 RTTI/异常(grep 验证),关闭以剥离 libcppabi 运行时(约 2.5 KB Flash)
|
||||
- -fno-rtti
|
||||
- -fno-exceptions
|
||||
ASM:
|
||||
- -DGD32E508
|
||||
- -DGD32E50X
|
||||
@@ -132,3 +136,5 @@ project:
|
||||
Link:
|
||||
- --library_type=microlib
|
||||
- --entry=Reset_Handler
|
||||
# 输出未引用段与总量报告,用于 Flash 尺寸归因
|
||||
- --info=unused,totals
|
||||
|
||||
Reference in New Issue
Block a user