home *** CD-ROM | disk | FTP | other *** search
- This is a preliminary release of GDB and GDBSERVE.NLM for Alpha/Netware.
-
- Building this release is very straightforward. You just need to do the
- following:
-
- 1) Unpack the release. gunzip < gdb-4.12.3.tar.gz | tar xvf -
- should do the trick.
- 2) cd gdb-4.12.3
- 3) ./configure --target alpha-netware
- 4) make BISON=yacc [You can use either gcc, or the DEC compiler here].
-
- Building GDBSERVE.NLM:
-
- 1) cd gdb-4.12.3/gdb/nlm
- 2) Edit Makefile, and change the value to NWAXPDEV to point at the
- DEC development kit.
- 3) make
-
- To debug a program, you need to install GDBSERVE.NLM on your server in
- [SYSTEM] (or, anywhere in your search path). Then, connect your netware
- server to the host with a null modem cable. Start up the app you want to
- debug by doing `gdbserve 0 0 APPNAME APP-ARGS ...'. At this point, the
- server will be stopped inside of GDBSERVE, waiting for debugger commands
- from the serial line. Now, you run GDB on a copy of the app .o file,
- and do a target command to connect to the server. `gdb foo.o', then
- (gdb) target remote /dev/tty00. Note that foo.o should not be the NLM.
- It should be the file that is input to alphanlm or nlmconv.
-
- At this point, GDB should be paused at the first instruction of the program
- (that's probably _Prelude). You can put a breakpoint at main, and then do
- a continue command to debug your program. At that point, normal step/next
- commands, backtrace, etc should work.
-
- Known problems:
-
- Sometimes you will see messages like the following:
- warning: Hit heuristic-fence-post without finding
- warning: enclosing function for address 0x1112f1f0
- These can be ignored. They are usually associated with stepping over
- external functions (like printf).
-
- Function calling (ie: print foo(42)) is very slow. A fix for this is in
- the works.
-
- Due to last minute problems with GAS, I was not able to build GDBSERVE.NLM
- with our tools, and I was unable to test code compiled with our tools. This
- should not be a problem, as GDB will quite happily debug programs compiled
- with either GCC, or the DEC tools. For the time being, GDBSERVE will be
- compiled with the DEC tools.
-
- We can't build prelude.o because the DEC dev kit didn't supply libhooks.h.
- For the time being, I have just copied prelude.o from the DEC dev kit into
- the GDB kit.
-
- In case of problems:
-
- If GDB hangs when talking to the target, try turning on remote debugging
- (you can use ^C to wake up GDB if necessary). To do this, just type
- `set remotedebug 1'. This will print out the protocol packets whenever
- GDB and GDBSERVE talk to each other.
-