X-Recipient: archive-cygwin@delorie.com
X-Spam-Check-By: sourceware.org
Message-ID: <BLU113-W49565CFCD21C93AC4B35C5BEBC0@phx.gbl>
From: Mike Marchywka <marchywka@hotmail.com>
To: <cygwin@cygwin.com>
Subject: RE: MS or cygwin dll debug tools/ was  "sys/sockio.h" etc.
Date: Wed, 28 May 2008 15:38:27 -0400
In-Reply-To: <483D7C01.EAE5ADA1@dessent.net>
References: <17275355.post@talk.nabble.com> <17290164.post@talk.nabble.com>     <4830F08D.6040505@cygwin.com> <17345729.post@talk.nabble.com>     <4833813A.7B6F7FAF@dessent.net> <17405074.post@talk.nabble.com>     <483583EE.8030605@cygwin.com>   <BLU113-W4491CD4A8C42B16C2A9FB9BEC60@phx.gbl>     <00e501c8bc1e$a44d0190$2708a8c0@CAM.ARTIMI.COM>     <BLU113-W102F782BB5AAB04B62F71BBEC60@phx.gbl>     <20080523000735.GA23793@ednor.casa.cgf.cx>    <BLU113-W20BC0AE5970EA19F944347BEC20@phx.gbl>   <483BBE3D.EDF663D3@dessent.net>  <BLU113-W146D9A038F045D262DEF5CBEBD0@phx.gbl>  <BLU113-W34F5DCFDEEB319379AAAD4BEBC0@phx.gbl>  <483D7849.5010505@sbcglobal.net> <483D7C01.EAE5ADA1@dessent.net>
Content-Type: text/plain; charset="Windows-1252"
MIME-Version: 1.0
X-IsSubscribed: yes
Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm
Precedence: bulk
List-Id: <cygwin.cygwin.com>
List-Unsubscribe: <mailto:cygwin-unsubscribe-archive-cygwin=delorie.com@cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe@cygwin.com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin@cygwin.com>
List-Help: <mailto:cygwin-help@cygwin.com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner@cygwin.com
Mail-Followup-To: cygwin@cygwin.com
Delivered-To: mailing list cygwin@cygwin.com
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from quoted-printable to 8bit by delorie.com id m4SJd9jc028650


> first instruction of the binary. There is no such "can't debug before
> main" restriction.
>

I think what bothered me is I just tried to step it to get minimum initial 
increment and that bombed- so I just assumed it wouldn't be early enough.
In any case, it looked like I needed to instrument the loading process, 

(gdb) info functions CRT
All functions matching regular expression "CRT":

Non-debugging symbols:
0x00401000  WinMainCRTStartup
0x00401000  mainCRTStartup
(gdb) info target
Symbols from "/cygdrive/e/new/temp/nmap/src3/nmap-4.62/a.exe".
Local exec file:
        `/cygdrive/e/new/temp/nmap/src3/nmap-4.62/a.exe', file type pei-i386.
        Entry point: 0x401000
        0x00401000 - 0x004e9608 is .text
        0x004ea000 - 0x004ebaa0 is .data
        0x004ec000 - 0x00509c24 is .rdata
        0x0050a000 - 0x00519b50 is .bss
        0x0051a000 - 0x0051bfa8 is .idata
(gdb) b *0x0401000
Breakpoint 1 at 0x401000
(gdb) run
Starting program: /cygdrive/e/new/temp/nmap/src3/nmap-4.62/a.exe

Program received signal SIGSEGV, Segmentation fault.

Program received signal SIGSEGV, Segmentation fault.

Program received signal SIGSEGV, Segmentation fault.

Program exited with code 0200.
You can't do that without a process to debug.
(gdb)

> Date: Wed, 28 May 2008 08:36:33 -0700
> From: brian@dessent.net
> To: gchicares@sbcglobal.net
> CC: cygwin@cygwin.com
> Subject: Re: MS or cygwin dll debug tools/ was "sys/sockio.h" etc.
>
> Greg Chicares wrote:
>
>> Using cygwin's gdb on a MinGW app, I can set this breakpoint
>> b '__mingw_CRTStartup'
>> on the function that invokes main(), and then examine variables
>> before main() is invoked. For a Cygwin app, I guess you'd break
>> on 'mainCRTStartup'. Does that breakpoint happen early enough to
>> meet your needs?
>
> You can also do "info target" to display the entry point and then set a
> breakpoint on it as e.g. "b *0x401000" if you want to start at the very
> first instruction of the binary. There is no such "can't debug before
> main" restriction.
>
> Brian
>
> --
> 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/
>

_________________________________________________________________
Give to a good cause with every e-mail. Join the i’m Initiative from Microsoft.
http://im.live.com/Messenger/IM/Join/Default.aspx?souce=EML_WL_ GoodCause

--
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/


