Keil5中.\Objects\xx.axf: error: L6002U: Could not open file xx.o: No such file or directory错误原因及解决方法

 转载于:Keil MDK5中…\OBJ\LED.axf: error: L6002U: Could not open file …\obj\main.o: No such file or directory的错误原因及解决办法 - 尚为网 (sunev.cn)

编译的时候突然出现如下的错误提示:

通常,这种错误都是电脑系统用户名有中文字符造成的(注意“电脑系统用户名”和“计算机名”的区别)。因为,Keil MDK 在安装的时候会写入系统变量 TEMP 和 TMP。

如果电脑系统用户名含有中文字符的话,系统变量中值的路径就会出现中文字符,导致 Keil MDK 软件运行不正确。那么,解决办法有两种:

  • (1)修改系统变量 TEMP 和 TMP 中值的路径,
  • (2)修改电脑系统用户名为英文。

(a) 如果你的电脑是专业版(Win10 下可通过右键电脑→属性→Windows 版本查看),则可以通过办法(1)来解决,具体操作如下:

右键我的电脑\属性\高级系统设置\环境变量\用户环境变量,找到变量 TEMP 和 TMP,将变量值中的“%USERPROFILE%”使用“C:\user\default”代替,重启电脑,再次打开工程,就可编译成功了!!

(b) 如果你的电脑是家庭版,用上述方法,还是会出现编译错误。因为家庭版的默认是没有 default 这个用户名的,所以只能通过办法(2)来解决,也就是要修改电脑系统用户名。

你可能通过控制面板等一系列操作把电脑系统用户名改成了英文,发现并没什么卵用,该问题还是会出现。因为通过控制面板修改的电脑系统用户名只是显示出来的用户名,而并不会影响到上述环境变量的路径。

因此,解决的办法只有一个,就是将家庭版的 windows 升级到专业版的,升级还是挺简单的,就是在 Win10 下可通过右键电脑→属性→Windows 激活,输入专业版的产品密钥,等待激活之后,就成了专业版的系统。此时就可以通过(1)中的办法解决了;或者再彻底一点,将电脑系统用户名改为英文,具体操作见:

https://blog.csdn.net/qq_45034517/article/details/101672571

之后在用户变量里改成相应的路径即可。

posted @ 2023-06-14 17:32  种星记  阅读(0)  评论(0编辑  收藏  举报  来源