Roh*_*rma 37 command-line batch-file msp430 iar
我正在尝试运行以下批处理命令.该命令已从IDE中提取,因此已确认正在运行.得到下面提到的错误.
我用双引号尝试了一些变化,但它们没有用.即使在powershell上它也有相同的信息.
C:\Program Files\IAR Systems\Embedded Workbench 7.0\430\bin\icc430.exe F:\CP001\source\Meter\Main.c -D Hardware_P20E -D Calibration_code -D _Optical -D _Configuration_TS0382 -o F:\CP001\Temp\C20EO\Obj\ --no_cse --no_unroll --no_inline --no_code_motion --no_tbaa --debug -D__MSP430F425 -e --double=32 --dlib_config C:\Program Files\IAR Systems\Embedded Workbench 7.0\430\lib\dlib\dl430fn.h -Ol --multiplier=16 --segment __data16=DATA16 --segment __data20=DATA20
Run Code Online (Sandbox Code Playgroud)

更新:
尝试使用引号解决方案会以某种方式混淆编译器

小智 43
如果目录中有空格,请在其周围加上引号.这包括您正在调用的程序,而不仅仅是参数
"C:\Program Files\IAR Systems\Embedded Workbench 7.0\430\bin\icc430.exe" "F:\CP001\source\Meter\Main.c" -D Hardware_P20E -D Calibration_code -D _Optical -D _Configuration_TS0382 -o "F:\CP001\Temp\C20EO\Obj\" --no_cse --no_unroll --no_inline --no_code_motion --no_tbaa --debug -D__MSP430F425 -e --double=32 --dlib_config "C:\Program Files\IAR Systems\Embedded Workbench 7.0\430\lib\dlib\dl430fn.h" -Ol --multiplier=16 --segment __data16=DATA16 --segment __data20=DATA20
Run Code Online (Sandbox Code Playgroud)
小智 11
您只需要将程序文件保存为双引号,其余命令不需要任何引用.
C:\"Program Files"\IAR Systems\Embedded Workbench 7.0\430\bin\icc430.exe F:\CP00 .....
Run Code Online (Sandbox Code Playgroud)
rjz*_*zii 11
这似乎不时发生在对命令行非常敏感的程序中,但一种选择是只使用DOS路径而不是Windows路径.这意味着C:\Program Files\将解决C:\PROGRA~1\并通常避免任何间距问题.
要获得短路径,您可以创建一个快速批处理文件,回显短路径:
@ECHO OFF
echo %~s1
Run Code Online (Sandbox Code Playgroud)
然后调用如下:
C:\>shortPath.bat "C:\Program Files"
C:\PROGRA~1
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
137284 次 |
| 最近记录: |