解决STM32在MDK-ARM(KEIL)编译时出现 已停止工作

时间:2021-12-18 03:19:03

解决STM32在MDK-ARM(KEIL)编译时出现 已停止工作

若是关闭对话框还可继续编译,只是到最后linking时显示一个error,提示

..\OBJ\XXX.axf: error: L6002U: Could not open file ..\obj\XXX.o: No such file or directory

"..\OBJ\test.axf" - 1 Error(s), 0 Warning(s).​

 

从网上查到很多相同问题,但是回答者都是简简单单说几句是什么原因就走了...这就是大神的通病吧,忙活自己的事去了...​​

解决:

1、右键我的电脑-管理-本地用户和组-用户 把里面你的中文用户名改成英文。​

2、右键我的电脑-属性 右下-计算机名称、域和工作组设置-更改设置 改成英文。​​

     左边高级系统设置-高级选项卡-环境变量把%USERPROFILE%替换成c:\user\default\​​

3、把MDK安装在英文目录。

 

原因:你电脑账户的用户名有中文存在 && 你MDK安装目录有中文存在​。​

根本原因:

因为MDK自带的jlink驱动文件 与 我们安装的jlink驱动冲突造成的。解决方案如下:

1.在jlink驱动的安装目录找到jLinkARM.dll文件,[路径如 D:\work\JLinkARM_V428c(不同版本路径名不同)], 如图:​



解决STM32在MDK-ARM(KEIL)编译时出现 已停止工作


2.找到MDK安装目录下的这个路径[如 D:\work\keil\ARM\Segger],复制上面jlink驱动目录下的jLinkARM.dll文件,把MDK的同名文件替换掉(替换前请先备份该文件)。如图:​


解决STM32在MDK-ARM(KEIL)编译时出现 已停止工作