This is the mail archive of the
mailing list for the Cygwin project.
Re: Help debugging a dll issue
- From: Eliot Moss <moss at cs dot umass dot edu>
- To: cygwin at cygwin dot com
- Date: Fri, 20 May 2016 09:46:30 -0400
- Subject: Re: Help debugging a dll issue
- Authentication-results: sourceware.org; auth=none
- References: <b21c0ab1-341b-d6f5-915b-f73973b8079b at cs dot umass dot edu> <CABHT960Yx_bg-NaHWcxePEV+Xz74NaVtsu+NjkrSZs4-62rCOA at mail dot gmail dot com> <3a4d2501-8845-99b6-d58b-544bff5e223f at cs dot umass dot edu> <20160520112618 dot GC12938 at dimstar dot local dot net> <dcfd0854-b7d0-9598-215c-a5f380b23968 at cs dot umass dot edu> <20160520133659 dot GD12938 at dimstar dot local dot net>
- Reply-to: moss at cs dot umass dot edu
On 5/20/2016 9:36 AM, Duncan Roe wrote:
On Fri, May 20, 2016 at 08:02:20AM -0400, Eliot Moss wrote:
On 5/20/2016 7:26 AM, Duncan Roe wrote:
Do you know what is the name of the totally different symbol? (maybe from nm -D)
Yes -- I have been using nm and objdump to examine the relevant files. The dll
is called libpypy-c.dll. The symbol I want to bind to is pypy_main_startup, and
its proper value (as returned by nm and objdump) is 0x6410ac60. The result I
get is the value of symbol pypy_g_PyNumber_Negative (an automatically generated
C function), which is 0x63443f00.
I wonder if these collide in some internal hash table and the hash lookup (or
the table building) is broken in some subtle way.
Regards -- Eliot
Does findit give the same answer for both symbols?
If you could build your library and libdl.a with debug (-g) then you might be
able to see how the lookup goes wrong.
HTH ... Duncan.
Well, the wrong answer comes back from the Windows routine GetProcAddress. The
bug seems to lie either in the Windows run-time code or in how the dll is being
built. I am trying giving one of the functions a different name to see what
happens (if it's a hash collision effect, presumably something will show up
Regards -- EM
Problem reports: http://cygwin.com/problems.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple