User forums > Embedded development

Codeblocks MCU / OpenOCD plugin

<< < (2/7) > >>

martind:
Hi All,

Patch for debuggergdb.cpp to dispatch cbEVT_DEBUGGER_x messages.

Martin.

[attachment deleted by admin]

Joerg:
Hi martind,

some dump questions:
On the berlios project site I only found the sources via svn.
Does that mean I have to checkout these and copy them over
my codeblocks sources?

Just came to my mind:
If the break command does not work for us embedded remote
debugging freaks, does that mean it doesn't work for codeblocks
user debugging under windows either?
This can't be, right?
But whats the difference between sending a CTRL+C event to gdb
when debugging remotely and debugging erm.... 'not' remotely????

mmkider:

--- Quote from: rekisum on January 19, 2009, 10:43:28 am ---Hi martind,

some dump questions:
On the berlios project site I only found the sources via svn.
Does that mean I have to checkout these and copy them over
my codeblocks sources?

Just came to my mind:
If the break command does not work for us embedded remote
debugging freaks, does that mean it doesn't work for codeblocks
user debugging under windows either?
This can't be, right?
But whats the difference between sending a CTRL+C event to gdb
when debugging remotely and debugging erm.... 'not' remotely????

--- End quote ---
hi, rekisum:
I have a question.
how to send CTRL+C to gdb without console windows?
Thank you for your reply.

martind:
Hi Reksium,

Sorry I need to write some docs... am working them...

You can check-out the SVN sources to anywhere you want.
Load the mcu workspace file in CodeBlocks. Ensure that the $(#cb) global variable is set to c:\...(wherever your codeblocks source is)..\src, and $(#zip) is set to point to zip.exe etc..

(BTW need to do some tweaks for Linux, I've been a bit windozy of recent)

Then build...and run your devel version.

The trouble I had with GDB is that to pause or break it, you would have to send a CTRL-C under windows, or SIGxx something or other under Linux. I could not do this programmatically under windows, and I don't think CodeBlocks can do it either.

So the work-around when debugging windows programs is to "prod" the program being debugged (Kernel break). This causes GDB to halt.
However, when debugging an embedded application, GDB is making a remote TCP/IP connnection (OpenOCD), therefore this is not possible. We have to tell OpenOCD to tell GDB to halt. And the simplest way I could think of was to telnet to OpenOCD and issue a "halt" command. Then it sends a command interrupt back to GDB.

Of course I bet there is some way of doing it, I just went for the easy "halt" option... perhaps somebody will come up with a solution.
However, if you run GDB in MI mode (change the interpreter), I believe GDB still has the command line available, even though it's debugging in the background. This might allow to queue a "stop" command on the fly.


Cheers,


Martin.

Joerg:
Hi Martin,

after some wiki and forums reading I got so far that
I could load your mcuplugin.workspace and compile.
After compiling the linker complains:

Compiling: telnetclient.cpp
Linking dynamic library: D:\Dateien\VStudio\Codeblocks\trunk\src\devel\mcumgr.dll
C:\Programme\CodeBlocks\MinGW\bin\ld.exe: cannot find -lcodeblock

I did compile wx and c::b successfully but there is no codeblocks.a around?

c::b: svn 5394
cbmcu: svn 10

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version