本帖最后由 crystal1987 于 2025-6-24 15:10 编辑
今天在调试一个新的项目时,在调试的电脑上运行正常,在我自己的电脑中运行,既然出现了异常(Error: Q0466E: An output file can only be specified if there is a single input file),虽然不影响程序运行和编译,但是有个BUG,让我一直不放心,于是就去深究了一下。
在网上搜索了一下原因,给出的问题定位是:在keil版本中Options for Target 'rtthread'->User->After Build/Rebuild->Run #1中的参数为fromelf.exe --bin -o $L@L.bin #L,也就是这个参数可能出现了问题;但是这个参数在另外一台电脑中是没有报错的,可能问题不在这里。但是在搜索解决方法的过程中,有个提示说可能是“空格”的问题。
于是就把源代码复制到电脑桌面上,打开,运行,既然没有问题;那问题是不是可以定位到程序的路径上?然后把代码发到当前盘根目录下,没问题。代码拷到根目录的下一级文件夹中,问题又出现了。
最后对比了一下路径,发现根目录的下一级文件夹命名中带有“空格”,然后把文件夹的名称修改了一下,去掉空格,文件就解决了。
最终遇到Error: Q0466E:的问题的解决方法:是把工程所在文件的路径中带有空格的文件夹重新命名,也就是文件夹命名中不能带“空格”。如以上两张图所示。
备注:项目所在路径的Source Code文件夹,没有空格程序运行正常;带有空格就会提示异常。
|
|