Hi,
I'm using the GNU ARM Eclipse plugins Version 1.1.7-201312221905 with Windows7 64bit and Eclipse Kepler.
In the debugger launch configuration I have the following path to Segger
C:\Program Files (x86)\SEGGER\JLinkARM_V480\JLinkGDBServerCL.exe
(this is the default installation path)
However, the debugger plugin does not like the space in the path.
It reports:
Error in services launch sequence
Error while launching command C:\Program\ Files\ (x86)\SEGGER\JLinkARM_V480\JLinkGDBServerCL.exe -if swd -device MKL25Z128xxx4 -endian little -speed auto -port 2331 -swoport 2332 -telnetport 2333 -vd -ir
Error while launching command C:\Program\ Files\ (x86)\SEGGER\JLinkARM_V480\JLinkGDBServerCL.exe -if swd -device MKL25Z128xxx4 -endian little -speed auto -port 2331 -swoport 2332 -telnetport 2333 -vd -ir
Cannot run program "C:\Program\": Launching failed
Using a path without spaces solves the problem.
Thanks!
Erich Styger
oops! :-(
will be fixed shortly
Hi Erich,
as expected, the problem was in the routine to escape whitespaces, that should behave differently on Windows than on unix.
could you test the fixed version from
and let me know if it is ok, so I can publish it on the main site?
thank you for your help,
Liviu
Hi Liviu,
things get double quoted now better, but it still fails?
Error in services launch sequence
Error while launching command "C:\Program Files (x86)\SEGGER\JLinkARM_V472\JLinkGDBServerCL.exe" -if swd -device MKL25Z128xxx4 -endian little -speed auto -port 2331 -swoport 2332 -telnetport 2333 -vd -ir
Error while launching command "C:\Program Files (x86)\SEGGER\JLinkARM_V472\JLinkGDBServerCL.exe" -if swd -device MKL25Z128xxx4 -endian little -speed auto -port 2331 -swoport 2332 -telnetport 2333 -vd -ir
Cannot run program ""C:\Program": Launching failed
ok, here is the story:
the version in updates-test now should accept spaces for both the server and the client. please confirm if it works for you too.
in addition, it should process variable substitutions from the RUn/Debug substitution set and from the C/C++ build variables.
finally, I disabled the swo output command if the interface is not swd, since I noticed your comment about it.
thank you for your help to improve the plug-in, and thank you for your very in-depth review.
I would appreciate if you could open bug/feature request tickets for all problems you identify, so I can keep track of them and finally fix.
regards,
Liviu
Hi Liviu,
thanks, that new update fixes the problem: I can launch Segger GDB server now even with a space in the path :-)
Yes, I know that handling spaces in CDT is a pain, and there are still many places where things probably do not work. But any fixes into handling it properly is a good thing to make the tools work with that problem (I know it for myself too).
About the Segger crash with SWO enabled: I have reported this to Segger yesterday, and they were able to reproduce the problem, and will work on fixing it.
And yes, I'll open tickets for anything I see worth to change/improve. And I'm a very happy user of your plugins :-)
Best regards,
Erich
could you also try the client with spaces in the path?
no, the GDB client (arm-none-eabi-gdb) with an absolute path, if you installed the toolchain in the default location it should also have a space in the path.
Yes, I have the ARM tools in the default path:
C:\Program Files (x86)\GNU Tools ARM Embedded\4.7 2013q2\bin
And this worked fine for me.
Does this help?
if the GDB client executable field defines only the program name, with or without macros, then the path is passed separately to the exec() system call, and it works even with spaces.
if you enter an absolute path (like C:\Program Files (x86)\GNU Tools ARM Embedded\4.7 2013q2\bin\arm-none-eabi-gdb), then things change, and here the original plug-in failed. now it should be fine.
ah, ok, now I understand.
I downloaded the latest plugins, and used
C:\Program Files (x86)\GNU Tools ARM Embedded\4.7 2013q2\bin\arm-none-eabi-gdb.exe
as my client path.
And that worked fine :-)
good news!
if no further problems, we'll close this bug.
thank you for your help.
fixed in 1.1.7-201312241058