On Thu, Dec 29, 2005 at 10:10:49PM -0500, Ivan Nestlerode <[EMAIL PROTECTED]> was heard to say: > On Tue, Dec 20, 2005 at 08:36:19AM -0800, Daniel Burrows wrote: > > On Mon, Dec 19, 2005 at 11:27:36PM -0500, Ivan Nestlerode <[EMAIL > > PROTECTED]> was heard to say: > > > On Mon, Dec 19, 2005 at 08:05:27PM -0800, Daniel Burrows wrote: > > > > Unfortunately, backtraces are generally useless unless you compile the > > > > program yourself with -O0 -fno-inline. > > > > > > > > What exactly do you do to trigger the segfault? Nothing happens when > > > > I > > > > put all the stuff that's being upgraded on hold and then purge those > > > > packages, even if I type 'g'. > > > > > > > > Daniel > > > > > > I start aptitude. I press "g". The programs are already marked for > > > holds and purges. I press "g" again and press Enter for "Ok". Then I > > > get the segfault. > > > > Ok, I think I've corrected how I'm running the program ... but it still > > doesn't segfault. > > > > > How exactly do I build aptitude such that a back trace is useful? I know > > > how to build the package from source but not how to change the build > > > options. > > > > Run 'CXXFLAGS="-g -O0 -fno-inline" ./configure' to disable optimization. > > > > Daniel > > I rebuilt this way and reproduced the segfault in gdb. Let me know if there > is something else I can do. > > -Ivan > > Program received signal SIG32, Real-time event 32. > [Switching to Thread -1212298320 (LWP 13269)] > 0xb7e30421 in __read_nocancel () from /lib/tls/libpthread.so.0 > (gdb) cont > Continuing. > > Program received signal SIGSEGV, Segmentation fault. > 0xb7d20956 in __deregister_frame () from /lib/libgcc_s.so.1 > (gdb) bt > #0 0xb7d20956 in __deregister_frame () from /lib/libgcc_s.so.1 > #1 0xb7ce966a in dl_iterate_phdr () from /lib/tls/libc.so.6 > #2 0xb7d21646 in _Unwind_Find_FDE () from /lib/libgcc_s.so.1 > #3 0xb7d1e397 in _Unwind_DeleteException () from /lib/libgcc_s.so.1 > #4 0xb7d1f505 in _Unwind_Backtrace () from /lib/libgcc_s.so.1 > #5 0xb7d1f59a in _Unwind_ForcedUnwind () from /lib/libgcc_s.so.1 > #6 0xb7e32002 in _Unwind_ForcedUnwind () from /lib/tls/libpthread.so.0 > #7 0xb7e2ffc1 in __pthread_unwind () from /lib/tls/libpthread.so.0 > #8 0xb7e2a3e6 in sigcancel_handler () from /lib/tls/libpthread.so.0 > #9 <signal handler called> > #10 0xb7e30421 in __read_nocancel () from /lib/tls/libpthread.so.0 > #11 0xb7e55983 in _nc_wgetch () from /lib/libncursesw.so.5 > #12 0xb7e691f3 in wget_wch () from /lib/libncursesw.so.5 > #13 0xb7e54745 in get_wch () from /lib/libncursesw.so.5 > #14 0x081a869c in pkgSimulate::~pkgSimulate () > #15 0x081a8780 in pkgSimulate::~pkgSimulate () > #16 0xb7e2bcfd in start_thread () from /lib/tls/libpthread.so.0 > #17 0xb7cb319e in clone () from /lib/tls/libc.so.6
What does "info threads" show, and what do you get if you switch to each thread in turn (using "thread") and check the backtrace? Daniel
signature.asc
Description: Digital signature

