Fri 04 Feb 2011 12:34:37 PM UTC, original submission:
I'm sorry for the vague title, but there are a couple of strange things that DDD is doing and I can't figure out a single title for them.
DDD opens the programs to be debugged correctly, but when I try to set a breakpoint a warning window pops up saying:
DDD: No source
/tmp/0x400898: No such file or directory
and in the console the next lines are written:
(gdb) break ej1.cpp:7
Breapoint 2 at 0x400898: file ej1.cpp, line 7.
(gdb) No such source file with the name 0x400898.
That is, it is using the memory address of the line where the breakpoint is to be set instead of the file name.
However, in spite of that warning, the breakpoint is correctly set and the program runs correctly.
The second thing seems to be related. If I try to debug a program composed of several source files and I use the option File->Open Source to get another source file, another error window pops up saying:
DDD: No Program
Please open a program first
and it prevents me to open any file though the list of possible source files is correct.
They seem to be too obvious points to be bugs, perhaps am I doing something wrong?
My system configuration is:
jmalvarez@atenea02:~$ g++ --version
g++ (Ubuntu 4.4.3-4ubuntu5) 4.4.3
Copyright (C) 2009 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
jmalvarez@atenea02:~$ ddd --version
GNU DDD 3.3.12 (x86_64-unknown-linux-gnu)
Copyright (C) 1995-1999 Technische Universit�t Braunschweig, Germany.
Copyright (C) 1999-2001 Universit�t Passau, Germany.
Copyright (C) 2001 Universit�t des Saarlandes, Germany.
Copyright (C) 2001-2009 Free Software Foundation, Inc.
Running on ubuntu 10.04 LTS - version Lucid Lynx
Compilation line:
g++ ej2.cc -c -g -o ej2.o
g++ ej1.cc -g -c -o ej1.o
g++ ej1.o ej2.o -o ej
Sources:
//ej2.hh
int f(const int, const int);
// ej2.cc
#include "ej2.hh"
int f(const int x, const int y)
{
return x + y;
}
//ej1.cc
#include "ej2.hh"
int main()
{
return f(2, 2);
}
Best regards and thanks for all
|