keil编译时报错:error: L6002U: Could not open file .\***\core_cm3.o

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了keil编译时报错:error: L6002U: Could not open file .\***\core_cm3.o相关的知识,希望对你有一定的参考价值。

使用keil编译光盘中附带的例子时报错:error: L6002U: Could not open file .\***\core_cm3.o:No such file or directory。
编译有的例子时出现了这个问题。例子是光盘中给的,肯定没有错误。我以前编译同一个例子的时候能生成core_cm3.o这个文件,现在却生成不了,希望谁能解释一下这是什么原因吗?网上也有人和我出现了同样的问题,但都没给出具体的解决方法。谢谢!
keil我是装在默认路径,重装了好几遍还是这个样子。

历时好几次的碰壁,我终于解决这个问题了。

根据百度其他答案给的思路,其实就是修改环境变量,因为当前系统TEMP和TMP环境变量存在着中文。但是如果你直接修改  %USERPROFILE%  为其他英文路径开Keil会卡死并闪退(其实是你打开main.c就闪退)!!!

因为修改成别的一个英文文件夹是不行的,你只是在环境变量中修改了文件路径,但是电脑中这些路径并不存在,所以你打开Keil才会闪退。

那么解决问题的关键就是:先在系统C盘中创建好了所有的英文路径,再你创建的文件夹路径修改环境变量!!!


准备工作:先将你的Keil软件关闭


1、在【C盘根目录】创建【UserData】文件夹

2、打开刚刚创建的【UserData】文件夹

3、在【UserData】中创建【AppData】文件夹

4、打开【AppData】在其中创建【Local】文件夹

5、打开【Local】在其中创建【Temp】

6、所有的文件创建好了,打开【Temp】文件夹

7、将你创建好的文件夹中的地址栏中的内容复制下来。

8、打开计算机右键-属性-高级系统设置-高级-环境变量

9、修改【TEMP】和【TMP】的环境变量

将原本的环境变量删除,替换为我们之前所创建文件夹的路径【 C:\\UserData\\AppData\\Local\\Temp 】


完成后如下图↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓


点击确定后退出。

再次打开Keil编译即可不再报错,再次愉快写代码吧。


祝愿诸位万事如意。

参考技术A

1、首先第一步,找到从网上下载好keil解压后,所有的一个文件夹。

2、然后当我们一般进入文件夹之后,发现了keil程序后就直接打开用了,其实这样的做法是错误的。

3、接着我们所要做的就是先打开这个setup文件夹,如下图所示。

4、然后再点击setup来进行程序安装,这样就可以将原来的覆盖掉。

5、最后成功安装好了以后,再打开keil,就可以发现可以正常的使用了,如下图所示。

参考技术B

记录一下自己的解决办法(仅供参考!!!):

1.由于别的破解软件需要,之前将系统时间调整至2012年。今天打开Keil5,出现以下警告

2.然后我叉掉并编译,报错

error: L6002U: Could not open file ..\\obj\\main.o: No such file or directory

3.然后修改系统时间,重启软件即可

参考技术C 我之前也遇到过这个问题,原因可能是之前我安装过keil4,卸载后有残留的文件在c盘,后面运行keil5的stm32历程时,编译就出现冲突了。我是重装系统,解决的,用的win10系统。
网上找到了比较科学的解释和解决方法: 正如各位大师所分析的那样是库版本引起的冲突,MDK4.7的库已经升级到CMSIS2.X版本以上了,这次的MDK5.X版已经使用的是CMSIS3.X以上,并且最重要的就是很多元件包没有需要自己根据需要安装,我在安装完ST的元件后,手贱又安装了ARM.CMSIS.3.20.3.pack,这个文件会安装到windows的目录中去,于是版本造成的冲突在卸载MDK5.0后,再安装此前的版本却因ARM.CMSIS.3.20.3并没卸载和删除而始终出错.解决办法就是将windows目录中的这个文件找到卸载并完全删除,然后再安装MDK新版,工程用CMSIS2.1版(我现在用的是官网下载的3.02版).安装后按照几位师傅指导重新加载工程,编译通过,下载后程序跑起来了!
参考技术D 是因为用户的系统环境变量中包含中文名识别不出来 具体操作方法有两种:1.修改计算机和工作组名全改为中文,之后重启

2.自行修改用户环境变量

编译到 core_cm3.c 文件的时候就出错了,错误信息是
..\Output\STM32-DEMO.axf: error: L6002U: Could not open file ..\output\core_cm3.o: No such file or directory 一编译到core_cm3 keil就开始报错

万恶的中文用户名导致找不到路径,

解决方法

计算机右键-属性-高级系统设置-高级-环境变量-XX的用户变量(xx是用户名一部分) 里面的temp和tmp路径是%userprofile%开头,把两个%userprofile%替换成c:\user\default。这样临时文件就不用存到有中文的路径了。原来的%userprofile%默认是c:\user\中文用户名。

Linux下安装过程中编译PHP时报错:configure: error: libjpeg.(a|so) not found

在Linux下安装PHP过程中,编译时出现configure: error: libjpeg.(a|so) not found 错误的解决的方法:

检查之后发现已经安装libjpeg。可是/usr/lib文件夹下没有libjpeg.so这个文件,在/usr/lib64下是有的,使用–with-jpeg-dir=/usr/lib64 依旧无效,

最后用ln -s /usr/lib64/libjpeg.so /usr/lib/libjpeg.so问题解决

libpng报错解决方法一样






以上是关于keil编译时报错:error: L6002U: Could not open file .\***\core_cm3.o的主要内容,如果未能解决你的问题,请参考以下文章

.\outup\XXXX.axf: error: L6002U: Could not open file c:\Keil\ARM\

php编译安装执行make时报错: make: *** [ext/fileinfo/libmagic/apprentice.lo] Error 1

升级openssh编译时报错“configure: error: *** working libcrypto not found, check config.log”的解决办法

windows10下安装opencv,cmake 时报错

编译apache时报错

Linux下安装过程中编译PHP时报错:configure: error: libjpeg.(a|so) not found