RTThread-Studio中,使用5.2.0版本默认配置生成工程,进行编译报警告的部分解决方法。

使用rtthread-studio创建工程,rtt版本为5.2.2,生成的工程不做任何修改,就大量报警告,比如如下:某个函数没有被提前声明。

这是rtsched.h文件在

这部分有如下定义,只有提前定义了__RT_KERNEL_SOURCE__或__RT_IPC_SOURCE__,源文件在引用rtsched.h文件后才能引用到这些调度文件。这一设置的目的,是保证核心调度函数不会暴露在用户面前。

所以针对该警告,不能将__RT_KERNEL_SOURCE__定义在rtsched.h头文件中。而是应该,哪里调用了这些报警告的函数,哪个源文件文件头(也就是在include头文件部分代码之前)定义__RT_KERNEL_SOURCE__,比如如下:

这样操作,可以解决部分内核调度函数调用,没有函数引用的警告。

对于后续的strlen部分警告,如下:

这是由于strlen没有提前声明。也就是需要引用string.h头文件,可以在board.h或者别的什么地方引用<string.h>,解决此警告。

在这之后,就可以保证初始工程0错误、0警告。

相关推荐
独小乐3 天前
019.ADC转换和子中断|千篇笔记实现嵌入式全栈/裸机篇
linux·c语言·驱动开发·笔记·嵌入式硬件·mcu·arm
电子科技圈4 天前
SmartDV展示完整的边缘与连接IP解决方案,以高速和低功耗特性赋能移动、物联网和媒体处理设备创新
人工智能·嵌入式硬件·mcu·物联网·智能家居·智能硬件·iot
天月风沙5 天前
Betaflight飞控、树莓派RP2350B主控编译教程
linux·单片机·嵌入式硬件·mcu·无人机·树莓派
电子科技圈6 天前
芯科科技2026 Tech Talks技术讲座启航聚焦无线与边缘 AI,共绘智能物联新蓝图
人工智能·嵌入式硬件·mcu·物联网·智能家居·智能硬件·iot
EVERSPIN7 天前
低功耗MCU对TWS充电仓的驱动控制
单片机·嵌入式硬件·mcu·低功耗mcu
白掰虾8 天前
STM32CubeMX2教程——STM32C5 UART
stm32·单片机·嵌入式硬件·mcu·usart·stm32cubemx2·stm32c542
狂奔蜗牛(bradley)10 天前
使用数组重构责任链实现通信协议解析
网络·mcu·重构
狂奔蜗牛(bradley)10 天前
嵌入式软件中如何用责任链模式重构串口协议栈
网络·单片机·mcu·重构·责任链模式
咸鱼嵌入式11 天前
【AutoSAR】详解CANIF模块
单片机·mcu·车载系统·autosar
EVERSPIN12 天前
高性能32位MCU在热敏打印机上的应用
单片机·嵌入式硬件·mcu·32位mcu