请求指教关于MDK5中unknow type name “__STATIC_INLINE”的解决方法

2019-07-14 15:41发布

小弟初学,遇到给问题,使用MDK5编写程序时,老是出现一个错误,但是编译又通过不报警。很是纳闷,老认为是哪里出了岔子。网上找了相关方法,说是升级ARM:CMSIS。下载了最新的pack安装了也没有消除这个错误。不知道如何解决,跪求各路高手指教。
而且,奇怪的是每次打开这个CMSIS_ARMCC.H文件都会出现不一样的错误。但是所有错误都和“__STAtiC_INLINE”相关。

具体报错提示:
error:unknow type name “__STATIC_INLINE”(这个东西已经有define了,在core_cm3.h文件里边可以找到,但是还是报警错误,不知道怎么回事)
error:expect“;”after top level declarator(这是什么鬼东西,打开一次报错,关闭再打开就不报错了)
使用的是STM32F103vct6。
截图1 截图1
截图2 截图2
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
1条回答
大苏打_59
2019-07-14 18:36
首先谢谢 @zhouxk 给出的指导方向,现在问题已经解决了,确实是core_cm3.h版本太旧的原因,重新从官网上下载了一个新的版本,从中提取include文件夹替换我的工程文件夹里边CMSIS里边的include文件,重新打开编译,不再出现莫名奇妙的错误。core_cm3.h版本从原本的4.3升级到5.0.5。
分析这个现象出现的原因在于使用stm32cubemx软件自动生成项目文件而导致的,不知道为什么该软件是最新版本,引用的.h文件却是一个15年的老版本。本人也没有搞明白问题所在。故而比较愚笨的采用替换的方式来解决。
附上CMSIS下载地址:http://www.keil.com/dd2/pack/#eula-container

一周热门 更多>