public inbox for gcc-help@gcc.gnu.org
 help / color / mirror / Atom feed
* Using the -g flag but gdb still sais: no debugging symbols found
@ 2007-12-07  0:50 Gary
  2007-12-07  1:05 ` Brian Dessent
  0 siblings, 1 reply; 3+ messages in thread
From: Gary @ 2007-12-07  0:50 UTC (permalink / raw)
  To: gcc-help

Hi,

I'm using CYGWIN to compile a source code which I've
downloaded.
I want to debug this code, which consists of many
source files.
I have edited the makefile to the best of my
understanding to include the -g flag when the make
utility calls g++. According to the make output -g is
indeed called but still I can't debug. What am I doing
wrong?

I am enclosing the makefile and also the make output
when it was run. There were some warnings output as
well, I don't think they are important but I don't
know how to redirect them to a file, they are
outputted to the shell.

Your help is much appreciated,

thanks,

Gary

The makefile:

#
# Makefile for cygmin/mingw - unrar
#
# Note: you have to 'make clean' before you can build
#    the sfx module
#

# POSIX using Cygmin GCC 3.3.1
CXX = g++
CXXFLAGS =  -O2 -Wno-deprecated -g
DEFINES = -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
-DLITTLE_ENDIAN

# Win32 using Cygmin GCC 3.3.1
#CXX = g++ -mno-cygwin
#CXXFLAGS = -g -O2 -Wno-deprecated
#DEFINES = -D_MSC_VER -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE

# Win32 using Mingw32 GCC 3.3.2
#CXX = g++
#CXXFLAGS = -O2 -Wno-deprecated
#DEFINES = -D_MSC_VER -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE

##########################

COMPILE=$(CXX) $(CXXFLAGS) $(DEFINES)
LINK=$(CXX)

UNRAR_OBJ=filestr.o recvol.o rs.o scantree.o

OBJECTS=rar.o strlist.o strfn.o pathfn.o int64.o
savepos.o global.o \
           file.o filefn.o filcreat.o archive.o
arcread.o unicode.o \
    system.o isnt.o crypt.o crc.o rawread.o encname.o
\
    resource.o match.o timefn.o rdwrfn.o consio.o
options.o \
    ulinks.o errhnd.o rarvm.o rijndael.o getbits.o
sha1.o \
    extinfo.o extract.o volume.o list.o find.o
unpack.o cmddata.o

.cpp.o:
    $(COMPILE) -D$(WHAT) -c -g $<

all:    unrar

clean:
    @rm -f *.o *.bak *~

unrar:    WHAT=UNRAR
unrar:    $(OBJECTS) $(UNRAR_OBJ)
    @rm -f makeunrar
    $(LINK) -Wl,-s -g -o unrar $(LDFLAGS) $(OBJECTS)
$(UNRAR_OBJ) $(LIBS)   

sfx:    WHAT=SFX_MODULE
sfx:    $(OBJECTS)
    @rm -f default.sfx
    $(LINK) -Wl,-s -g -o default.sfx $(LDFLAGS)
$(OBJECTS) -DSFX_MODULE


The make utility output:

g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
rar.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
strlist.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
strfn.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
pathfn.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
int64.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
savepos.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
global.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
file.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
filefn.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
filcreat.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
archive.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
arcread.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
unicode.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
system.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
isnt.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
crypt.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
crc.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
rawread.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
encname.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
resource.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
match.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
timefn.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
rdwrfn.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
consio.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
options.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
ulinks.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
errhnd.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
rarvm.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
rijndael.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
getbits.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
sha1.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
extinfo.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
extract.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
volume.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
list.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
find.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
unpack.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
cmddata.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
filestr.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
recvol.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
rs.cpp
g++ -O2 -Wno-deprecated -g  -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DLITTLE_ENDIAN -DUNRAR -c -g
scantree.cpp
g++ -Wl,-s -g -o unrar  rar.o strlist.o strfn.o
pathfn.o int64.o savepos.o global.o file.o filefn.o
filcreat.o archive.o arcread.o unicode.o system.o
isnt.o crypt.o crc.o rawread.o encname.o resource.o
match.o timefn.o rdwrfn.o consio.o options.o ulinks.o
errhnd.o rarvm.o rijndael.o getbits.o sha1.o extinfo.o
extract.o volume.o list.o find.o unpack.o cmddata.o
filestr.o recvol.o rs.o scantree.o    



      ____________________________________________________________________________________
Never miss a thing.  Make Yahoo your home page. 
http://www.yahoo.com/r/hs

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Using the -g flag but gdb still sais: no debugging symbols found
  2007-12-07  0:50 Using the -g flag but gdb still sais: no debugging symbols found Gary
@ 2007-12-07  1:05 ` Brian Dessent
  2007-12-07  1:49   ` Gary
  0 siblings, 1 reply; 3+ messages in thread
From: Brian Dessent @ 2007-12-07  1:05 UTC (permalink / raw)
  To: Gary; +Cc: gcc-help

Gary wrote:

> DEFINES = -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
> -DLITTLE_ENDIAN

Cygwin does recognise these defines so this is not necessary, although
it probably does not hurt.  64 bit LFS is the default on Cygwin, you
don't have to define anything.

> unrar:    $(OBJECTS) $(UNRAR_OBJ)
>     @rm -f makeunrar
>     $(LINK) -Wl,-s -g -o unrar $(LDFLAGS) $(OBJECTS)
> $(UNRAR_OBJ) $(LIBS)   

-Wl,-s tells gcc to pass -s to the linker, and -s means strip the
executable.  So all the debug information you just generated is
discarded.  Also, -g when linking doesn't do anything, so you should
remove that too.

Brian

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Using the -g flag but gdb still sais: no debugging symbols found
  2007-12-07  1:05 ` Brian Dessent
@ 2007-12-07  1:49   ` Gary
  0 siblings, 0 replies; 3+ messages in thread
From: Gary @ 2007-12-07  1:49 UTC (permalink / raw)
  To: gcc-help


--- Brian Dessent <brian@dessent.net> wrote:

> 
> -Wl,-s tells gcc to pass -s to the linker, and -s
> means strip the
> executable.  So all the debug information you just
> generated is
> discarded.  Also, -g when linking doesn't do
> anything, so you should
> remove that too.
> 
> Brian
> 

Worked

Thanks



      ____________________________________________________________________________________
Never miss a thing.  Make Yahoo your home page. 
http://www.yahoo.com/r/hs

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2007-12-07  1:49 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-12-07  0:50 Using the -g flag but gdb still sais: no debugging symbols found Gary
2007-12-07  1:05 ` Brian Dessent
2007-12-07  1:49   ` Gary

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).