[EIDE] 导入MDK工程且兼容GCC编译的方法
0. 声明本系列文章禁止搬运/转载至CSDN, 禁止基于内容衍生的任何收费行为!!! 请各位遵守开源免费之精神.
1. 前言
在一些开发中, 我们使用armcc编译器比较困难,但是完全基于makefile去操作gcc是一件很繁琐的行为;如之前写的文章使用makefile编译工程, 所以这里介绍一种生成通用MDK工程但利用EIDE去兼容GCC编译器的方法.
2.实现方法
!!! warning "注意"
1. 根据以下文章基于STM32CubeMX生成MDK工程;
!!!
2. 在生成MDK工程后别急着退出工程, 修改生成MDK工程,换成生成makefile工程.
3. 打开文件夹你就会发现, 这两个工程是共存的.
4.打开EIDE , 导入MDK工程
具体流程可以去参考上面写好的文章基于STM32CubeMX生成MDK工程;
5. 复制makefile工程生成的.s文件和.ld文件到EIDE工程文件路径下;打开code然后修改链接器内容
不出意外你编译会触发一个error " non constant or forward reference address expression for section .ARM.extab"
这其中原因为 你的gcc版本也是10版的, 你可以换成11版或者前往.ld文件 将全部的(READONLY)替换成空格:(老用户推荐)
但是如果你以前没安装过gcc,似乎 直接导入 STM32 Cube Programmer CLI 工具 是集成了新版本的GCC的;但是已经安装过的话,要把 **C:\Users\你的用户名.eide\tools ** 路径下的文件全部清除掉,然后重新打开code,等待eide漫长的自恢复,再只下载STM32 Cube Programmer CLI也可以解决.
之后点击编译即可.
至此, 你就算编译完成了! 然后就是配置 烧录配置进行烧录即可. (附加一张本工程的基于openOCD 的 daplink 配置方法 )
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
页:
[1]