diff options
Diffstat (limited to 'gdb/nlm/README-ALPHA-NETWARE')
-rw-r--r-- | gdb/nlm/README-ALPHA-NETWARE | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/gdb/nlm/README-ALPHA-NETWARE b/gdb/nlm/README-ALPHA-NETWARE new file mode 100644 index 0000000..b092f71 --- /dev/null +++ b/gdb/nlm/README-ALPHA-NETWARE @@ -0,0 +1,60 @@ +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. |