Pedro Alves wrote:
Hi all,

The new gdb support based on gdbserver is now installed
into gdb cvs head at http://sourceware.org/gdb/

To build it, you will need a little patch, so configure
accepts the arm-wince-mingw32ce target.  I'm waiting
for autoconf folks to accept the mingw32ce target name,
so I can commit that patch, but in the meantime, if anyone
wants to test it, let me know, and I'll guide you.  Particularly
interesting would be to hear from people with 64bit machines
that can't build the gdb in our svn.


Someone asked me about this privately.

Attached is the small patch needed to be able to build it.
Apply it to gdb-cvs/src/bfd

* build gdb with:

mkdir buildgdb
cd buildgdb
$(PATH_TO_GDB_SOURCES)/src/gdb/configure \
     --target=arm-wince-mingw32ce \
     --prefix=/opt/mingw32ce
make && make install

* and gdbserver with:

mkdir buildgdbserver
cd buildgdbserver

$(PATH_TO_GDB_SOURCES)/src/gdb/gdbserver/configure \
       --host=arm-wince-mingw32ce \
       --target=arm-wince-mingw32ce \
       --prefix=/opt/mingw32ce

make && make install

* copy built gdbserver.exe to the device.
eg: copy it to \tmp\gdbserver.exe

* copy the program you want to debug to the device.  You
can also strip it first with arm-wince-mingw32ce-strip before
copying to safe both space on the device and copy time.

eg: copy it to \tmp\main.exe

* run gdbserver on the device like so:

gdbserver :9999 /tmp/main.exe

9999 is the tcp port gdbserver opens for communication
with gdb. You can use whichever you like.  I just find
9999 easy to type.

start arm-wince-mingw32ce-gdb like so:
arm-wince-mingw32ce-gdb main.exe

* connect to the gdbserver:

gdb> target remote :9999

gdb should connect to gdbserver, and
the main.exe program is stopped at the entry point.

* Put a break in main:
gdb> b main

issue a continue (1):
gdb> cont

Debug as usual.

(1) When you connect to a remote target, the target is
already running, so you don't issue a run, but a
continue.  That is not WinCE specific, but a
consequence of how gdb/remote is designed.

Since gdb<->gdbserver uses normal tcp communication, it
doesn't depend on Activesync for anything.  Of course,
to do the gdbserver.exe and main.exe uploading you could use
Activesync or Synce.  You can also copy the files using
a flash card reader/writer as well.

Cheers,
Pedro Alves



	* config.bfd (arm-wince-mingw32ce*): Add bfd target.
---
 config.bfd |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Index: bfd/config.bfd
===================================================================
--- bfd.orig/config.bfd	2007-03-14 21:30:46.000000000 +0000
+++ bfd/config.bfd	2007-04-25 19:30:50.000000000 +0100
@@ -231,7 +231,7 @@ case "${targ}" in
     targ_underscore=no
     targ_cflags=-DARM_COFF_BUGFIX
     ;;
-  arm-wince-pe | arm-*-wince)
+  arm-wince-pe | arm-wince-mingw32ce*)
     targ_defvec=arm_wince_pe_little_vec
     targ_selvecs="arm_wince_pe_little_vec arm_wince_pe_big_vec arm_wince_pei_little_vec arm_wince_pei_big_vec"
     targ_underscore=no


-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Cegcc-devel mailing list
Cegcc-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cegcc-devel

Reply via email to