X-Recipient: archive-cygwin@delorie.com
DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id
	:list-unsubscribe:list-subscribe:list-archive:list-post
	:list-help:sender:date:from:to:subject:message-id:reply-to
	:references:mime-version:content-type:in-reply-to; q=dns; s=
	default; b=oJiUcsKvoig6sfx+jBJpdv8xzVBhpGXnYSrruNYcniVX4LOkMeol4
	mg1fre6qdYqsO0Tf7zbXFZrAoadhcpJcIpHPncxkqx2BqsvHYeXxU24X/3u/U6uq
	xenXAMbkGNlguDihYoxBcpGlqMQRaM3UCZVLpXj9tg7yqJFdAQNB9Y=
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id
	:list-unsubscribe:list-subscribe:list-archive:list-post
	:list-help:sender:date:from:to:subject:message-id:reply-to
	:references:mime-version:content-type:in-reply-to; s=default;
	 bh=DLGo2QZeSQyZ3zngcAQ8qjAmkeQ=; b=ssmP6qp2Z/d06aNAnddB4MmZ5ybS
	fj3uduJjTExNO3JcCl8tHtmo0dRjRwL0mC2XVJispXQcFkmhzPIQUdIF9yJ4jhd1
	ryGv6uQjUYLfcU+KhNskwYUA2SMaGtWcxfRcx099jLQMYCZ7TqFrY6xirjuzj4A2
	AaOi5ZizWJL1OYI=
Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm
List-Id: <cygwin.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
Authentication-Results: sourceware.org; auth=none
X-Virus-Found: No
X-Spam-SWARE-Status: No, score=-5.9 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.2
X-HELO: calimero.vinschen.de
Date: Mon, 30 Mar 2015 12:55:29 +0200
From: Corinna Vinschen <corinna-cygwin@cygwin.com>
To: cygwin@cygwin.com
Subject: Re: static vs. shared linking
Message-ID: <20150330105529.GJ29875@calimero.vinschen.de>
Reply-To: cygwin@cygwin.com
Mail-Followup-To: cygwin@cygwin.com
References: <5510A9AB.7020607@tiscali.co.uk> <5511AF73.9070607@tiscali.co.uk> <20150325090453.GB3017@calimero.vinschen.de> <551339E4.60705@tiscali.co.uk>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha1;	protocol="application/pgp-signature"; boundary="phCU5ROyZO6kBE05"
Content-Disposition: inline
In-Reply-To: <551339E4.60705@tiscali.co.uk>
User-Agent: Mutt/1.5.23 (2014-03-12)

--phCU5ROyZO6kBE05
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Mar 25 22:42, David Stacey wrote:
> On 25/03/2015 09:04, Corinna Vinschen wrote:
> >  If you
> >install the cygwin-debuginfo package, addr2line returns something like t=
his
> >as the call stack (non-required path components removed):
> >
> >[...]/cygwin/exceptions.cc:1247
> >[...]/cygwin/exceptions.cc:1501
> >[...]/cygwin/sigproc.cc:717
> >[...]/cygwin/signal.cc:252
> >[...]/cygwin/signal.cc:303
> >[...]/cygwin/signal.cc:313
> >[...]/cygwin/signal.cc:289
> >[...]/cygwin/signal.cc:375
>=20
> Thank you for your comments - they were really helpful. Yes, I should have
> specified '-g' on the command line - that was an omission on my part -
> sorry.
>=20
> I've never had much joy out of addr2line before, and I'm struggling to
> recreate what you've done. I've added '-g' to the command line, run 'go.s=
h'
> again. This generates a fresh stackdump file, and then I do:
>=20
> awk '/^[0-9]/{print $2}' shared_test.exe.stackdump | addr2line -f -e
> shared_test.exe
>=20
> but I just see question marks. Please could you show the exact lines you'=
re
> using.

addr2line is a bit dumb and needs help.  What I do is to cat the
stackdump file and look at the addresses.  They usually show where
the stuff comes from:

  $ gawk '/^0/{print $2}' mkgroup.exe.stackdump
  7FFBDC82DDB6
  001800FEC36
  001800FE188
  001800CF471
  001800CF53D
  0018007EAC1
  00100402DE6
  00180049411
  00180046369
  00180046180
  00180049488
  00100401351
  00100401010
  7FFBD9FE13D2
  7FFBDC85EB64

The 7f addresses are from OS DLLs you can't read with addr2line.
0018xxx is the Cygwin DLL, 0010xxx is the application itself.  Other
addresses are other DLLs.  Just check the addresses against
/etc/rebase.db.x86_64.

Then call addr2line for each object file, e.g.:

  $ addr2line -e /usr/bin/cygwin1.dll 001800FEC36 001800FE188 001800CF471
  [...]/cygwin/passwd.cc:576
  [...]/cygwin/passwd.cc:353
  [...]/cygwin/grp.cc:413
  $ addr2line -e /usr/bin/mkgroup.exe 00100401351 00100401010
  /usr/src/debug/cygwin-1.7.35-1/winsup/cygwin/lib/cygwin_crt0.c:22
  /usr/src/debug/cygwin-1.7.35-1/winsup/cygwin/crt0.c:34


Corinna

--=20
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Maintainer                 cygwin AT cygwin DOT com
Red Hat

--phCU5ROyZO6kBE05
Content-Type: application/pgp-signature

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iQIcBAEBAgAGBQJVGSuhAAoJEPU2Bp2uRE+gF78P/0Ok77GTWTVECmYu55aZQQvZ
e+QSEutFbr7F62ZIHIWPBJn9GsmVm6LUPxyV4lq26H9aFqSYNbcY4s8pLfL8TPLq
dQejOYUBwg6D1z8nEIVJD49kPl8IEraCx3ZY8bp8uss63R9NTVUpgCMgpk7jR7nD
SiJHu7WV/a7KoC6UlP8U3W8z2IqG0qsEh/gMUbxpVVnWKwQujN+SMSpvLQtuKPSA
QqZsflrxg+3rYPXLSWoQ/dBavHJdZ9PyCFVnk5SDjSWfVu3iPdD+KdXmTNfn7iRg
8iFdDwhPpN3ytPJGCe5ofmQ5iKaE71/7XcT8vwBOUUI2QatB0fclLTlVStOa24Y5
KTfYPfRZhURDpZDknw0NG5finBkwyuuA8FE5rihc0aFND318FRVooucr2Copfzlq
YKX60L4ztBtHa7xr79Lx1yZhNIIOpsY/ryXM7aavBegn3T3JJi7D85wD3t9vaqRH
2J/83iLWyQwvoB2uIENG+u4D6/eOYDG7I+YC6eO1OG6DdPYP6SzQsEqcNC7doRRJ
4ZDSZQ08Bq33TcBuZ1g2TFNBx61CcDtQZWxARW+gfraHXk6uO712nsMAXvk8FfDE
Cb4xN0C6jEmFcAC26P0OEw8oiTneuG6lzRWXNLTkiWQvlKlCq+EqqtOmTNlS28rL
XR0RP1yb9mGc2wtlI+7r
=v8rU
-----END PGP SIGNATURE-----

--phCU5ROyZO6kBE05--
