大家好
我为periph#u setup.c报告了一个“无源代码:错误:#5:无法打开源代码输入文件”。
我已经检查了所有的路径和文件位置,他们似乎是正确的。
我还检查了文件权限,并将整个文件层次结构设置为读/写访问。
我尝试删除.c文件并将其重新添加到项目中。
我查看了为periph\u setup.c发出的编译器命令,它非常大,在单个Win7命令行上超过5kB。这就是问题所在吗?
有一个叫做“via files”的特性,它允许通过从文件中读取编译器参数来缩短命令行。
如何设置MDK5以使用--via?项目属性在C/C++选项卡中有一个Includes编辑器,它似乎控制编译器命令的生成。
明确地。。。
我正在将µVision V5.15与DA14580\u 581\u SDK\u 3.0.8.0结合使用,并尝试编译我的第一个项目。
按照“UM-B-003\u DA14580\u 581软件开发指南\u v1.6.pdf”到第4.4节的结尾。
运行Win7x64。
***使用编译器“V5.05 update 2(build 169)”,文件夹:“C:\Keil\u V5\ARM\ARMCC\Bin”
生成目标“模板”
正在编译arch\u main.c。。。
..\..\..\src\plf\refip\src\arch\main\ble\arch\u main.c(39):错误:#5:无法打开源代码输入文件“periph\u setup.h”:没有这样的文件或目录
#包括“periph\u setup.h”
..\..\..\src\plf\refip\src\arch\main\ble\arch\u main.c:0个警告,1个错误
正在编译periph\u setup.c。。。
“no source”:错误:#5:无法打开源代码输入文件“..\..\..\src\modules\app\src\app\u project\my\u application\system\periph\u setup.c”:没有这样的文件或目录
..\..\..\src\modules\app\src\app\u project\my\u application\system\periph\u setup.c:0个警告,1个错误
[...]
IDE版本:
µVision 5.15版
版权所有(C)2015 ARM Ltd和ARM Germany GmbH。保留所有权利。
工具版本号:
工具链:MDK Lite版本:5.15.0
工具链路径:C:\Keil\u v5\ARM\ARMCC\Bin
C编译器:Armcc.exe V5.05 update 2(内部版本169)
汇编程序:Armasm.exe V5.05更新2(内部版本169)
链接器/定位器:ArmLink.exe V5.05更新2(内部版本169)
库管理器:ArmAr.exe V5.05更新2(内部版本169)
十六进制转换器:FromElf.exe V5.05更新2(内部版本169)
CPU DLL:SARMCM3.DLL V5.15.0
对话框DLL:DARMCM1.DLL V1.12.0.0
目标DLL:Segger\JL2CM3.DLL V2.99.15.0
对话框DLL:TARMCM1.DLL V1.9.0.0
当做,
欧文
较短的路径解决了这个问题。
当我将整个项目文件夹树移到文件系统的更高位置时,编译成功。我不知道具体原因,但可能与Win7x64命令行长度、路径长度或文件夹嵌套的限制有关。
注意:在第一次运行MDK5时,我可以选择从MDK4格式升级项目,或者在MDK5中安装MDK4遗留支持。我选择升级这个项目。
为了让其他人判断自己的文件夹布局,我描述了c:\BAD\u PATH\my\u project.uvprojx和c:\GOOD\u PATH\my\u project.uvprojx。
长度(c:\BAD\u PATH)=193个字符,包括18“\”
长度(c:\GOOD\u PATH)=113个字符,包括11“\”
当做,
欧文
谢谢你的反馈。BR JE\u对话框
我刚开始的时候也有类似的问题。罪魁祸首是下载的名称DA14580\u 581\u SDK\u 3.0.8.0.zip,解压后接受默认路径,将其放在名为'DA14580\u 581\u SDK\u 3.0.8.0'的目录中,Win7显然可以在目录名中加点,但Keil uV 5x似乎不行。只需将目录复制到根目录并重命名它就解决了问题,之后我就可以编译/运行示例appa了。希望这有帮助。