Debugging applications – Digi 9P 9360/9750 User Manual

Page 34

Advertising
background image

D e b u g g i n g a p p l i c a t i o n s

3 4

L x N E T E S U s e r ’ s G u i d e

Debugging applications

The purpose of a debugger is to allow you to see what is going on his own programs while

they execute. For that purpose the GDB debugger is used by means of the gdbserver

application that runs on the target side and communicates with the host computer. This

communication can happen on the serial port or through Ethernet (the latter is preferred

for being much faster).

The use of the GDB debugger is out of the scope of this manual. You can get more

information about it in the standard GDB man pages.

In order to debug an application it has to be rebuilt with debug information. To do that,

enter the target binary build directory (e.g. "apps/mem") and rebuild the application with

the following command:

A binary mem will be created and copied to the rootfs. Restart the target with the new

rootfs.

Run the debug server on the target with the following commands:

Port number 2001 was selected randomly.

Now start the debug client on the host and connect to the target with

~/LxNETES3.2$ rm apps/mem/*.o apps/mem/mem

~/LxNETES3.2$ make apps DEBUG=1 install

#

gdbserver localhost:2001 /usr/bin/mem

Process /mem created; pid = 39
Listening on port 2001
Remote debugging from host 192.168.42.1
->

~/LxNETES3.2$ ../bin/arm-linux-gdb mem

GNU gdb 6.3

Copyright 2004 Free Software Foundation, Inc.

GDB is free software, covered by the GNU General Public License, and you are

welcome to change it and/or distribute copies of it under certain conditions.

Type "show copying" to see the conditions.

There is absolutely no warranty for GDB. Type "show warranty" for details.

This GDB was configured as "--host=i386-pc-linux-gnu --target=arm-linux-

uclibc"

...

(gdb)

Advertising