X-Recipient: archive-cygwin AT delorie DOT com X-SWARE-Spam-Status: No, hits=-0.9 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_LOW,RCVD_NUMERIC_HELO,SPF_HELO_PASS,SPF_PASS X-Spam-Check-By: sourceware.org To: cygwin AT cygwin DOT com From: Lenik Subject: Re: expr error Date: Mon, 18 May 2009 12:20:00 +0800 Lines: 120 Message-ID: References: <4A1024F1 DOT 4000102 AT byu DOT net> <4A10A0E2 DOT 803 AT gmail DOT com> <4A10BD99 DOT 2010805 AT gmail DOT com> <4A10D9E8 DOT 5040407 AT gmail DOT com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1b3pre) Gecko/20090223 Thunderbird/3.0b2 In-Reply-To: <4A10D9E8.5040407@gmail.com> X-IsSubscribed: yes Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com On 2009-5-18 11:45, Dave Korn wrote: > Lenik wrote: >> ok, > > Thanks. > >> Program received signal SIGSEGV, Segmentation fault. >> 0x05240000 in ?? () >> (gdb) bt >> #0 0x05240000 in ?? () >> #1 0x69181041 in ?? () from /usr/bin/cyggmp-3.dll >> #2 0x691c9000 in ?? () from /usr/bin/cyggmp-3.dll >> #3 0x691ca000 in ?? () from /usr/bin/cyggmp-3.dll >> #4 0x0022cdb8 in ?? () >> #5 0x61020273 in per_module::run_ctors () from /usr/bin/cygwin1.dll >> #6 0x006fa418 in ?? () >> #7 0x61020340 in dll::init () from /usr/bin/cygwin1.dll >> #8 0x00000000 in ?? () >> (gdb) info files > > The info files output confirms there's nothing unusual loaded into the > process memory. That makes me think it's not BLODA. The presence of > cyggmp-3.dll in the stack trace is interesting; that stack trace looks like > it's probably correct, and we are running start-up constructors. > >> Symbols from "/usr/bin/expr". > >> 0x69181000 - 0x691c4db8 is .text in /usr/bin/cyggmp-3.dll >> 0x691c5000 - 0x691c8e54 is .data in /usr/bin/cyggmp-3.dll >> 0x691c9000 - 0x691c9004 is .rdata in /usr/bin/cyggmp-3.dll >> 0x691ca000 - 0x691ca170 is .bss in /usr/bin/cyggmp-3.dll >> 0x691cb000 - 0x691cf8c6 is .edata in /usr/bin/cyggmp-3.dll >> 0x691d0000 - 0x691d0410 is .idata in /usr/bin/cyggmp-3.dll >> 0x691d1000 - 0x691d2680 is .reloc in /usr/bin/cyggmp-3.dll >> 0x65b81000 - 0x65b86558 is .text in /usr/bin/cygintl-8.dll >> 0x65b87000 - 0x65b8703c is .data in /usr/bin/cygintl-8.dll >> 0x65b88000 - 0x65b88854 is .rdata in /usr/bin/cygintl-8.dll >> 0x65b89000 - 0x65b895d8 is .bss in /usr/bin/cygintl-8.dll >> 0x65b8a000 - 0x65b8a5ae is .edata in /usr/bin/cygintl-8.dll >> 0x65b8b000 - 0x65b8b7e0 is .idata in /usr/bin/cygintl-8.dll >> 0x65b8c000 - 0x65b8c460 is .reloc in /usr/bin/cygintl-8.dll >> 0x67c71000 - 0x67c86fe8 is .text in /usr/bin/cygiconv-2.dll >> 0x67c87000 - 0x67c87008 is .data in /usr/bin/cygiconv-2.dll >> 0x67c88000 - 0x67d6481c is .rdata in /usr/bin/cygiconv-2.dll >> 0x67d65000 - 0x67d654b8 is .bss in /usr/bin/cygiconv-2.dll >> 0x67d66000 - 0x67d66172 is .edata in /usr/bin/cygiconv-2.dll >> 0x67d67000 - 0x67d6734c is .idata in /usr/bin/cygiconv-2.dll >> 0x67d68000 - 0x67d68d00 is .reloc in /usr/bin/cygiconv-2.dll > > Now, this is interesting. All your DLLs are in very different places to > mine, in a working instance of expr.exe: > > 0x63f41000 - 0x63f84db8 is .text in /usr/bin/cyggmp-3.dll > 0x63f85000 - 0x63f88e54 is .data in /usr/bin/cyggmp-3.dll > 0x63f89000 - 0x63f89004 is .rdata in /usr/bin/cyggmp-3.dll > 0x63f8a000 - 0x63f8a170 is .bss in /usr/bin/cyggmp-3.dll > 0x63f8b000 - 0x63f8f8c6 is .edata in /usr/bin/cyggmp-3.dll > 0x63f90000 - 0x63f90410 is .idata in /usr/bin/cyggmp-3.dll > 0x63f91000 - 0x63f92680 is .reloc in /usr/bin/cyggmp-3.dll > 0x6f5c1000 - 0x6f5c6558 is .text in /usr/bin/cygintl-8.dll > 0x6f5c7000 - 0x6f5c703c is .data in /usr/bin/cygintl-8.dll > 0x6f5c8000 - 0x6f5c8854 is .rdata in /usr/bin/cygintl-8.dll > 0x6f5c9000 - 0x6f5c95d8 is .bss in /usr/bin/cygintl-8.dll > 0x6f5ca000 - 0x6f5ca5ae is .edata in /usr/bin/cygintl-8.dll > 0x6f5cb000 - 0x6f5cb7e0 is .idata in /usr/bin/cygintl-8.dll > 0x6f5cc000 - 0x6f5cc460 is .reloc in /usr/bin/cygintl-8.dll > 0x674c1000 - 0x674d6fe8 is .text in /usr/bin/cygiconv-2.dll > 0x674d7000 - 0x674d7008 is .data in /usr/bin/cygiconv-2.dll > 0x674d8000 - 0x675b481c is .rdata in /usr/bin/cygiconv-2.dll > 0x675b5000 - 0x675b54b8 is .bss in /usr/bin/cygiconv-2.dll > 0x675b6000 - 0x675b6172 is .edata in /usr/bin/cygiconv-2.dll > 0x675b7000 - 0x675b734c is .idata in /usr/bin/cygiconv-2.dll > 0x675b8000 - 0x675b8d00 is .reloc in /usr/bin/cygiconv-2.dll > > So I think you must have rebased, yes? Interesting. > >> (gdb) info reg >> eax 0x5240000 86245376 >> ecx 0x7c80e6cb 2088822475 >> edx 0x0 0 >> ebx 0x1 1 >> esp 0x22cd0c 0x22cd0c >> ebp 0x22cd18 0x22cd18 >> esi 0x691c4da4 1763462564 >> edi 0x20 32 >> eip 0x5240000 0x5240000 >> eflags 0x10206 [ PF IF RF ] >> cs 0x1b 27 >> ss 0x23 35 >> ds 0x23 35 >> es 0x23 35 >> fs 0x3b 59 >> gs 0x0 0 >> (gdb) info frame >> Stack level 0, frame at 0x22cd10: >> eip = 0x5240000; saved eip 0x69181041 >> called by frame at 0x22cd14 >> Arglist at 0x22cd08, args: >> Locals at 0x22cd08, Previous frame's sp is 0x22cd10 >> Saved registers: >> eip at 0x22cd0c >> (gdb) quit > > Those all look sensible. Right, I think I have a guess what's going on. > Please try re-installing libgmp3 using setup.exe and see if it solves the > problem for you. I think this might be the same as > > http://www.cygwin.com/ml/cygwin/2009-02/msg00461.html > http://www.cygwin.com/ml/cygwin/2009-02/msg00466.html > http://sourceware.org/ml/binutils/2008-07/msg00372.html > > cheers, > DaveK > > Yes, I've rebased. After extracted cyggmp-3.dll from libgmp3-4.3, it's ok now. cheers, Lenik -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/