gregk@uunet.uu.net (Greg Kincade) (06/19/91)
I ftped the gdb-3.5 from prep.ai.mit.edu and loaded it on my
Compaq 486 running SCO Unix 3.2.2. The 'README' file says to
type, "config.gdb" to get a list of valid machine types. From
that list I chose "i386-sv32".
After typing "config.gdb i386-sv32",and after the script echoes
"Editing Makefile", it (cpp?) responds with the following:
tmp.c(229) : error C21412: ellipsis requires three periods
tmp.c(231) : error C21412: ellipsis requires three periods
tmp.c(231) : error C21412: ellipsis requires three periods
tmp.c(267) : error C2018: unknown character '0x40'
GDB is now set up for use with a i386-sv32.
>From looking at config.gdb,it looks like tmp.c is a tmp copy
of Makefile.dist and the line(s) that is causing my pain is
as follows:
$(CC) -E >Makefile tmp.c $(MD) "-MD_MAKEDEFINE=$(MD)"
-rm tmp.c
I tried to press on by hacking the resultant Makefile and finally
got everything to compile.Then I tried to run gdb on itself,but I
get:
Invalid symbol data: .bf/ .ef/ .bb/ .eb symbol mismatch, at symbol
12722.
Setting up the environment for debugging gdb.
Function fatal not defined.
Would someone please help?
Thanx
rbraun@spdcc.COM (Rich Braun) (06/25/91)
I didn't have the problem you report when compiling gdb under 3.2.2, but I did find that it requires read access to /bin/sh. Once you've gotten it to compile and run, you'll run into this. A helpful followup to my appeal for help in this newsgroup suggested the following solution: cp /bin/sh /usr/local/lib/gdb-sh ; chmod 755 /usr/local/lib/ gdb-sh. Also, you have to change the shell's path name in one of the gdb source files from /bin/sh to the new one you created. (I put it in /usr/local because that's an NFS-exported filesystem which any workstation user can access.) -rich
sef@kithrup.COM (Sean Eric Fagan) (06/26/91)
In article <8062@spdcc.SPDCC.COM> rbraun@spdcc.COM (Rich Braun) writes: >I didn't have the problem you report when compiling gdb under 3.2.2, The problem is that an ANSI-conformant C preprocessor (as msc has [well, mostly 8-)]) cannot deal with a Makefile as input. Why? Because it is not valid C. In config.gdb, if it has 'cc -E', replace it with '/lib/cpp [...]'; that should do the trick. Or use rcc instead of cc. Also, as was pointed out, /bin/sh (or $SHELL; I forget which one is checked first) needs to be readable. -- Sean Eric Fagan | "What *does* that 33 do? I have no idea." sef@kithrup.COM | -- Chris Torek -----------------+ (torek@ee.lbl.gov) Any opinions expressed are my own, and generally unpopular with others.