httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From barries <barr...@slaysys.com>
Subject gcc -g -O2 ==> gdb stepping problems [Was: gdb & mod_perl-2.0?]
Date Thu, 10 May 2001 20:11:51 GMT
[cross-posting to new-httpd, since that's the more appropriate forum]

Background: I had trouble single-stepping through the routine defined by

   AP_IMPLEMENT_HOOK_RUN_ALL(int,pre_connection,(conn_rec *c),(c),OK,DECLINED)

.

On Fri, May 04, 2001 at 02:21:25PM -0700, Doug MacEachern wrote:
> 
> it looks fine to me, what is the problem exactly?

Ok, got back to playing with this today: looks like the default CFLAGS
setting for autoconf (created by AC_PROG_CC) is "-g -O2".  That seems
like an odd combination to me, but it's as-installed on two RedHats and
a FreeBSD.

When running httpd-2.0's ./configure with either of --with-debug
--enable-maintainer-mode, the pesky -O2 remains, causing my
single-stepping problems. Doing the oddball

   CFLAGS=-g ./configure --with-maintainer-mode ...

gets rid of the -O2 and single stepping seems to work nicely.

Playing with gcc a bit, it seems (not sure) that -O sets
-fomit-frame-pointer which (at the least) prevents gdb from being able
to step back into a routine defined by a macro from subroutines it
calls.

Is this a real issue, or am I or my system confused somehow? How do
others handle this?

- Barrie

Mime
View raw message