This is the mail archive of the
cygwin-apps@cygwin.com
mailing list for the Cygwin project.
Re: Did I find an error in the current binutils or what???
- To: Corinna Vinschen <cygwin-apps at cygwin dot com>
- Subject: Re: Did I find an error in the current binutils or what???
- From: Charles Wilson <cwilson at ece dot gatech dot edu>
- Date: Wed, 07 Nov 2001 09:42:26 -0500
- References: <20011107131736.U2965@cygbert.vinschen.de>
Corinna Vinschen wrote:
> Hi,
>
> I'm just trying to build the new born openssh-3.0p1 for Cygwin.
>
> There's a slight difference between 1.3.3 and 1.3.4 in so far as
> __progname is defined in 1.3.4 while it wasn't in 1.3.3.
>
> Unfortunately, __progname isn't defined in any header file. So what
> happens (and what should work fine in theory) is, I'm getting the
> following message at the end of the link stage:
>
> Warning: resolving ___progname by linking to __imp____progname (auto-import)
Okay, so your program (ssh) was compiled without the appropriate
__declspec(dllimport) decorator on __progname ('cause it isn't defined in
ANY header). Therefore, the auto-import stuff kicks in, and magically
searchs for "__imp__" + desired_symbol. It finds it (__imp____progname).
So far, so good.
> Hum, the problem is that I'm getting _another_ message right after
> the above one:
>
> nmth000000.o(.idata$4+0x0): undefined reference to `_nm____progname'
> collect2: ld returned 1 exit status
Except that the cygwin1.dll/libcygwin.a that you are linking against does
not have the requisite auto-import support thunks (_nm__*). Perhaps this
cygwin was compiled using a (very) old binutils? pre-20010802 ?
--Chuck