[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
[cdt-debug-dev] MI-debugger for embedded applications
|
I want to use the CDT in order to develop embedded applications for V850 and
ARM.
The current used tool chain is the GNU-TOOLS 3.3.2 with GDB 6.0.
I loaded the the cylin embedded CDT plugin several times but it's unstable
with my linux environment and with this tool chain.
Now I made some modifications in the CDT sources in order to evaluate the
behavior of the CDT with the MI debug interface.
The result seems stable.
My modifications:
Unfortunately i couldn't insert the load command in the GDB command file
(dosn't work). Moreover that would be long winded.
Hence I wrote a new class "MILoad" and inserted it into the
createLaunchSession() method in the
GDBServerCDIDebugger class after the invocation of TargetSelect.
Then the debugger was running but during the termination of the debug process
the application was hanged.
The first reason was the line:
session.postCommand0(abort, -1); // do not wait for the answer.
in MIInferior: terminate()
I've replaced it by session.postCommand() with a wait for the answer.
Otherwise CDT got the answer later and was totally confused.
What is the sense of "no wait for answer"?
Another problem is the terminate() method in MISession.
After the call of "postCommand0(exit, 2000)", eclipse hangs totally.
I don't now why, but the problem dosn't occur with a "Thread.sleep(2000)"
before the "postCommand()"
Which way do you prefer for future development of the CDT-debugger? A
dedicated embedded debugger plugin or the enhancement of the MI debugger
interface?
I have not a deep insight into the CDT project but i hope, we can suggest the
use of eclipse CDT for the user application development.
Burkhard Kirchner
FALCOM