X-Recipient: archive-cygwin AT delorie DOT com X-SWARE-Spam-Status: No, hits=-0.9 required=5.0 tests=AWL,BAYES_00,DKIM_ADSP_CUSTOM_MED,FREEMAIL_FROM,FSL_HELO_BARE_IP_2,KHOP_THREADED,NML_ADSP_CUSTOM_MED,RCVD_IN_DNSWL_NONE,RCVD_NUMERIC_HELO,RP_MATCHES_RCVD,SPF_HELO_PASS X-Spam-Check-By: sourceware.org To: cygwin AT cygwin DOT com From: jojelino Subject: Re: gdb bt gives many question marks Date: Thu, 14 Mar 2013 21:57:12 +0900 Lines: 67 Message-ID: References: <603c2ab2 DOT 23bed DOT 13d67af2820 DOT Coremail DOT hgw00 AT 126 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 NT 5.2; rv:22.0) Gecko/20100101 Thunderbird/22.0a1 In-Reply-To: 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 2013-03-14 PM 6:30, Ken Huang wrote: > 2013/3/14 jojelino : >> On 2013-03-14 PM 4:37, Ken Huang wrote: >>> >>> Hi all, >>> >>> I have a problem when using gdb to debug my program in cygwin, the 'bt' >>> command >>> gives me many '??'. >>> (gdb) bt full >>> #0 0x7c92e514 in ntdll!LdrAccessResource () from >>> /cygdrive/c/WINDOWS/system32/ntdll.dll >>> No symbol table info available. >>> #1 0x7c92df5a in ntdll!ZwWaitForSingleObject () from >>> /cygdrive/c/WINDOWS/system32/ntdll.dll >>> No symbol table info available. >>> #2 0x7c8025db in WaitForSingleObjectEx () from >>> /cygdrive/c/WINDOWS/system32/kernel32.dll >>> No symbol table info available. >>> #3 0x00000714 in ?? () >>> No symbol table info available. >>> #4 0x00000000 in ?? () >>> No symbol table info available. >>> >>> My test program is as follows: >>> void bar() >>> { >>> abort(); >>> } >>> >>> void foo() >>> { >>> bar(); >>> } >>> >>> int main() >>> { >>> foo(); >>> } >>> >>> So, did I compile wrong, or is there something I didn't set properly? >>> >>> Thanks, >>> Ken >>> >> >> There is no way of identifying stdcall or fastcall ABI for return address >> that are not annotated by DWARF contained in stack frames in current gdb. >> you'd better give up or come with patches that solved the problem. >> -- >> Regards. > > So you mean gdb can't help to debug buggy code without patches? but as the > results I googled before, there are people out there use gdb just like in linux. > > Do I need to install some external packages? > > Regards, > Ken > Yes. this is problem of gdb and it failed to detect ebp based stack frame. if you wanted figuring out whether SIGABRT signal correctly points your code that called abort() then your post clearly revealed that it didn't work. and i can't say any external package can be used to resolve this problem. -- Regards. -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple