Date: Mon, 11 Nov 2002 07:45:38 +0200 (IST) From: Eli Zaretskii X-Sender: eliz AT is To: Charles Wilkins cc: djgpp AT delorie DOT com Subject: Re: i686-pc-msdosdjgpp-g++ problems (long) In-Reply-To: <85ctsu00ta2hiln51cm74ug0589tk0rp86@4ax.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Reply-To: djgpp AT delorie DOT com Errors-To: nobody AT delorie DOT com X-Mailing-List: djgpp AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk On Sun, 10 Nov 2002, Charles Wilkins wrote: > >Ok. Now do "br 0x0001f47f" or "br *0x0001f47f" (I forget the exact > >syntax) and "run". Now you should stop just before the crash. Examine > >the registers and figure out what's wrong. Do "disass 0x0001f47f" or > >"disass *0x0001f47f" to see the exact machine instruction that > >crashes. > > C:\Archives\RIP2\DJGPP\bin>gdb wel-g.exe > GNU gdb 5.2.1 > Copyright 2002 Free Software Foundation, Inc. > GDB is free software, covered by the GNU General Public License, and > you are > welcome to change it and/or distribute copies of it under certain > conditions. > Type "show copying" to see the conditions. > There is absolutely no warranty for GDB. Type "show warranty" for > details. > This GDB was configured as "i386-pc-msdosdjgpp"... > (gdb) run > Starting program: c:/Archives/RIP2/DJGPP/bin/wel-g.exe > > Program received signal SIGSEGV, Segmentation fault. No, no, no, this is wrong. You should set the breakpoint _before_ running the program, not after. That is, type "br *0x0001e1df" right after GDB prints its startup blurb, and _then_ type "run". > Could this problem be resulting from the libstdc++.a archive library > having a name that defies DOS naming conventions? No, but is it possible that libstdc++.a you linked against was compiled for native GNU/Linux compiler, not as a cross-compiled library for DJGPP?