error: L6236E: No section matches selector - no section to be FIRST/LAST.

一、生成初始化代码

今天用cubexMX导出初始化程序的时候发现它弹出了一个报错窗口,如图所示;

看它的弹窗翻译过来就是:代码已经成功生成了在xxx文件路径下,但是项目的“MDK-ARM”文件夹生成的时候遇到一个问题。

它这里也没有说是什么问题,就挺讨厌外国人总是把重点内容放在后面讲,不认真看还真的没有主注意到这个问题;

二、工具链编译代码

用keil5编译了一下代码,出现了一个报错,起初我还以为是常见的报错,就再编译一次,结果这个报错信息依然存在;

双击这个报错信息跳转到如下:

乍一看也不知道哪里有问题,结合我之前学习的makefile知识,大致意思应该是没有找到堆栈的地址和大小;

三、报错原因

顺着这个思路去找,我去工程里面检查了芯片的型号、工程上设置的堆栈大小、都没有发现神异常;我寻思应该是启动文件里面的堆栈是不是设置错误了;然后去检查整个工程的寻找工程的启动文件;果然,没有找到启动文件,这个报错90%是跟这个启动文件确实有关系了。

四、解决办法

找了一个相同芯片的工程,讲启动文件拷贝到该工程之下,新建一个分组“Application/MDK-ARM”

点击“Add Files...”讲启动文件添加到工程之中,如下:

五、验证

工程添加启动文件之后,再次编译工程,顺利通过!

文章参考:error:L6236E:No section matches selector - no section to be FIRST/LAST - hifish - 博客园 (cnblogs.com)

  • 5
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值