<html>
<head>
<style>
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Verdana
}
</style>
</head>
<body class='hmmessage'>
scripts/do-cm3-m3gdb.sh just cd's over to m3-sys/m3gdb and runs cm3.<BR>
 <BR>
m3gdb builds and seems to work fine for me.<BR>
 <BR>
Specifically, on AMD64_LINUX birch, I can both:<BR>
 <BR>
mkdir -p $HOME/obj/gdb<BR>
cd $HOME/obj/gdb<BR>
$HOME/dev2/cm3/m3-sys/m3gdb/gdb/configure && make<BR>
gdb/gdb gdb/gdb<BR>
break main<BR>
r<BR>
 <BR>
and<BR>
 <BR>
cd $HOME/dev2/cm3/m3-sys/m3gdb<BR>
rm -rf AMD64_LINUX<BR>
cm3<BR>
 <BR>
 <BR>
AMD64_LINUX/m3gdb AMD64_LINUX/m3gdb<BR>
break main<BR>
r<BR>
 <BR>
 <BR>
I haven't tried with Modula-3 code and/or stabs.<BR>
 <BR>
 <BR>
Updating from the 2005 6.4 release to a current 6.8 release is probably advisable anyway.<BR>
 <BR>
 <BR>
But again, um, er, could we maybe adapt the generated code so that plain gdb is all anyone would need/want?<BR>
 <BR>
 <BR>
Cygwin fork being so slow makes me want to optimize out such large pieces as building gdb.<BR>
Maybe I can figure out a way to speed up Cygwin fork some day...<BR>
 <BR>
 <BR>
 - Jay<BR> <BR>> From: jay.krell@cornell.edu<BR>> To: rodney.m.bates@cox.net<BR>> Date: Wed, 10 Jun 2009 20:13:55 -0700<BR>> CC: m3devel@elegosoft.com; estellnb@yahoo.de<BR>> Subject: Re: [M3devel] recent m3gdb does not want to compile<BR>> <BR>> Do they have any field names at all? Can m3gdb see them? I suspect no <BR>> to both. The struct is not TOO odd.<BR>> <BR>> - Jay (phone)<BR>> <BR>> On Jun 10, 2009, at 7:20 PM, "Rodney M. Bates" <BR>> <rodney.m.bates@cox.net> wrote:<BR>> <BR>> > Peter Eiserloh has recently gotten it to build on AMD64_LINUX,<BR>> > using the do-cm3-m3gdb.sh script. You should try that method.<BR>> ><BR>> > Unfortunately, it is not recognizing executables and dynamic<BR>> > libraries. I have looked at this a bit, and the problem looks to<BR>> > be in the bfd library, which is stock from gdb. m3gdb is derived<BR>> > from gdb 6.4, which is by now quite old. gdb maintainers are about<BR>> > to make a new release, I think 6.9. I am in the throes of moving<BR>> > house now, but am getting odd bits of time to look at this.<BR>> > I have been thinking for some time that it is about time to update<BR>> > m3gdb to a later gdb. For one thing, gdb now has some reverse<BR>> > debugging support, which would be very nice for Modula-3 too.<BR>> > I have done it two or three times, and I believe Tony has done it<BR>> > at least once. It takes a fair amount of work. But it should be<BR>> > possible to get the current m3gdb working on AMD64 without going<BR>> > to that much trouble. Maybe just some updated source files from<BR>> > bfd will do the trick.<BR>> > Jay is right about global variables. You will have a very hard time<BR>> > finding them using stock gdb. They are located in a record with a<BR>> > funny compiler-generated name and have funny compiler-mangled<BR>> > field names. I'm not sure you can get them even if you know these.<BR>> ><BR>> ><BR>> ><BR>> ><BR>> > Elmar Stellnberger wrote:<BR>> >> For any kind of reason recent m3gdbs refuse to compile at me:<BR>> >><BR>> >> ../gdb/configure<BR>> >> ...<BR>> >> checking for x86_64-unknown-linux-gnu-ar... no<BR>> >> checking for ar... ar<BR>> >> ...<BR>> >><BR>> >><BR>> >>> which ar<BR>> >>><BR>> >> /usr/bin/ar<BR>> >><BR>> >> setting --bindir to /usr/bin or /usr does not help.<BR>> >> full error log: see attachement<BR>> >><BR>> >> Should I compile m3gdb towards 32bit on an x86_64 platform if the<BR>> >> m3build I am using is 32bit?<BR>> >><BR>> >> Besides this I am in wonder why a plain gdb can not access global<BR>> >> Modula-3 variables using PM3/EZM3 although I have specified -gstabs <BR>> >> in<BR>> >> m3config/src/COMMON:<BR>> >> ASM = ["as","--32","-gstabs","-o"] % Assembler<BR>> >> DEBUG_FLAG = "-gstabs" % debugging info<BR>> >> BDEBUG_FLAG = "-gstabs" % debugging info<BR>> >> LDEBUG_FLAG = "-gstabs"<BR>> >><BR>> >> i.e.<BR>> >><BR>> >>> gdb -batch --directory=<BR>> >>><BR>> >> --directory=/home/elm/m3/Benchmark/LINUXLIBC6/../src -ex 'info<BR>> >> variables' /home/elm/m3/Benchmark/LINUXLIBC6/./pureDCT-queue >smbls<BR>> >><BR>> >><BR>> >>> grep myglobal smbls -> nothing found<BR>> >>><BR>> >><BR>> >><BR>> ><BR>> ><BR></body>
</html>