Re: Problem trying to get DDD to debug a simple assembly language program
shaunak saha <[email protected]> Thu, 4 Apr 2013 23:07:50 -0700
| Newsgroups | gmane.comp.debugging.ddd.general |
|---|---|
| Message-ID | <CAKw9LJnhg-Fvu=Wmh=wt4ccAxffx1=Z1ML1DZazz=Tp1FtUu4w@mail.gmail.com> |
Tim, Nicely explained. >In my experience with ddd and various inferior debuggers, a lot of the >"hourglass" issues happen when ddd doesn't understand the results it >received from the inferior. It's looking for a response to a command and >it got something it doesn't know how to handle. >ddd logs this interaction with the inferior debugger in ~/.ddd/log. I >recommend you exit ddd, remove the current log file, and then restart >with the same parameters as before. Then investigate the log and see >what's at or near the end. Rich, if you can do this and send us the "log" file it would be greatly helpful. >ddd hasn't seen any maintenance in years. It's possible that there's >been changes to how the inferior debugger outputs certain messages, and >that's causing ddd to not handle it correctly. I totally agree that its time to make a new release and I am working on it.. On Thu, Apr 4, 2013 at 3:07 PM, Tim Mooney <[email protected]> wrote: > In regard to: Problem trying to get DDD to debug a simple assembly > language...: > > > I have a Zareason 64 bit laptop running Ubuntu Linux 12.10 64 bit. Have >> been reading an "Assembly language step by step" book and have been >> attempting to use ddd >> to debug. Obtained ddd from Ubuntu software center download. >> Have compiled: nasm -f elf64 -g -F dwarf junk.asm >> Linked: ld -o junk junk.o >> The program from terminal successfully prints "Eat at Joe's!" as it >> should. >> >> However, when I try to load it into ddd the program hangs and I get a >> continuous hourglass. The code "displays", but I can't set breakpoints >> or do anything else. >> > > Remember that ddd is essentially a graphical front end to an underlying > debugger that's actually doing most of the work. In ddd parlance, the > other > debugger is frequently called the "inferior" debugger, but without > the negative connotations. > > By default, ddd is going to use the GNU debugger, gdb, as the inferior. > When you start up ddd, it will run gdb on your behalf, sending it commands > based on actions you perform in the ddd GUI (like setting breakpoints, > stepping through code, etc.). ddd also must read the inferior's response > and interpret it for display on the GUI. > > In my experience with ddd and various inferior debuggers, a lot of the > "hourglass" issues happen when ddd doesn't understand the results it > received from the inferior. It's looking for a response to a command and > it got something it doesn't know how to handle. > > ddd logs this interaction with the inferior debugger in ~/.ddd/log. I > recommend you exit ddd, remove the current log file, and then restart > with the same parameters as before. Then investigate the log and see > what's at or near the end. > > > The only way I can get it to load is from the >> terminal, i.e ____$ddd junk. >> >> When I do the above. I note that the terminal lists several Warnings, e.g >> Warning: Cannot convert string "-*helvetica-medium-r .....and Warning: >> could not load font....." >> I believe leaving the cursor hung up also. >> > > ddd is a Motif-based program, so it uses the older style names for fonts. > These are all configurable, though. There's a resource file that's > installed with ddd that establish many of the defaults, and you can > override those either within the application or by setting X-style > resource declarations. > > I recommend you try starting ddd with no options, and then go into > > Edit->Preferences->Fonts > > and try browsing to find suitable fonts for your workstation. > > > I've tried web sites and reading the ddd manual, but am at a loss. I >> suspect I'm doing something silly, but would appreciate any feedback. >> Could it be ddd doesn't handle 64 bit code? Note the same thing happens, >> even if I use the 32-bit book version that was already compiled when >> unzipped?! >> > > I don't think it's anything you're doing wrong. > > ddd hasn't seen any maintenance in years. It's possible that there's > been changes to how the inferior debugger outputs certain messages, and > that's causing ddd to not handle it correctly. > > Keep in mind that debugging assembly is probably much less common than > debugging C or C++ with ddd, so that too adds to the likelihood that > you'll run into issues that few other people have seen before. > > Tim > -- > Tim Mooney [email protected] > Enterprise Computing & Infrastructure 701-231-1076(Voice) > Room 242-J6, IACC Building 701-231-8541 (Fax) > North Dakota State University, Fargo, ND 58105-5164 > >