delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2012/03/12/10:03:55

X-Recipient: archive-cygwin AT delorie DOT com
X-Spam-Check-By: sourceware.org
Date: Mon, 12 Mar 2012 15:02:56 +0100
From: Corinna Vinschen <corinna-cygwin AT cygwin DOT com>
To: cygwin AT cygwin DOT com
Subject: Re: executable does not load
Message-ID: <20120312140256.GD2382@calimero.vinschen.de>
Reply-To: cygwin AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
References: <20120312132714 DOT GA3196 AT qp9482>
MIME-Version: 1.0
In-Reply-To: <20120312132714.GA3196@qp9482>
User-Agent: Mutt/1.5.21 (2010-09-15)
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Unsubscribe: <mailto:cygwin-unsubscribe-archive-cygwin=delorie DOT com AT cygwin DOT com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
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 Mar 12 14:26, Denis Excoffier wrote:
> 
> Hello,
> 
> I have a problem that appeared between the 20120308 snapshot
> and the 20120309 snapshot.
> 
> [I have CYGWIN_NT-5.1 (on top of a French-only Windows XP SP3), all
> packages installed and up to date this morning, installation with
> "Just Me". When i install a snapshot i extract the whole
> cygwin-inst-xxxxxxxx.tar.bz2, not only cygwin1.dll.]
> 
> I have an executable that is dynamically linked with a rather big
> home-built cygxerces-3-1.dll (from Xerces-C++ 3.1.1) and with a
> home-built stdc++-6.dll (from GCC 4.7.0 RC 20120302).
> 
> Under the 20120309 snapshot, the program does not get loaded, like if
> there was some DLL missing (no message, no diagnostic). I tried strace,
> but my strace appears to be broken (too many environment variables?).
> 
> I'll try to prepare soon some STC that does not contain megabytes of
> personal data, and using only "approved" compilers and libraries.

The problem could be a result of that very executable.  So it could be
extremly hard to create a testcase without it.  I assume you saw the
changes I made in the 20120309 ChangeLog entry.  So there is very likely
some bug in the new code in hook_or_detect_cygwin, which was supposed to
handle differences between VC++ and GCC-generated executables.

If you feel up to the task, you could install the cygwin1.dbg file,
start bash under gdb, set a breakpoint at hook_or_detect_cygwin, and
call "exec foo", assuming your application is called foo.

If not, you could also provide the application and the necessary DLLs
on your homepage and send me a pointer via PM (use my mail address from
the ChangeLog entries).

> I've also noticed a "???" in the output of ldd (but this
> is perhaps unrelated):
> [...]
> % ldd /usr/bin/cygoctave-1.dll
>         ntdll.dll => /cygdrive/d/WINDOWS/system32/ntdll.dll (0x7c910000)
>         kernel32.dll => /cygdrive/d/WINDOWS/system32/kernel32.dll (0x7c800000)
>         ??? => ??? (0x70740000)
>         ??? => ??? (0x640c0000)
>         ??? => ??? (0x6bf40000)
>         ??? => ??? (0x61000000)
>         ??? => ??? (0x69780000)
>         ??? => ??? (0x6c480000)

I can't reproduce that one with a Cygwin DLL and ldd built from current
CVS.  What I see is

  $ ldd /bin/cygoctave-0.dll
        ntdll.dll => /mnt/c/Windows/SYSTEM32/ntdll.dll (0x774a0000)
        kernel32.dll => /mnt/c/Windows/system32/kernel32.dll (0x775f0000)
        KERNELBASE.dll => /mnt/c/Windows/system32/KERNELBASE.dll (0x757d0000)
        cygcruft-0.dll => /usr/bin/cygcruft-0.dll (0x6cf00000)
        cyggcc_s-1.dll => /usr/bin/cyggcc_s-1.dll (0x6bb40000)
        cygwin1.dll => /usr/bin/cygwin1.dll (0x61000000)
        cyggfortran-3.dll => /usr/bin/cyggfortran-3.dll (0x6b3e0000)
        cygstdc++-6.dll => /usr/bin/cygstdc++-6.dll (0x648e0000)
        cygblas-0.dll => /usr/lib/lapack/cygblas-0.dll (0x61780000)
        cyglapack-0.dll => /usr/lib/lapack/cyglapack-0.dll (0x5dd10000)
        cygreadline7.dll => /usr/bin/cygreadline7.dll (0x6d470000)
        cygncursesw-10.dll => /usr/bin/cygncursesw-10.dll (0x66920000)
        USER32.dll => /mnt/c/Windows/system32/USER32.dll (0x77080000)
        GDI32.dll => /mnt/c/Windows/system32/GDI32.dll (0x76a70000)
        LPK.dll => /mnt/c/Windows/system32/LPK.dll (0x775e0000)
        USP10.dll => /mnt/c/Windows/system32/USP10.dll (0x76e80000)
        msvcrt.dll => /mnt/c/Windows/system32/msvcrt.dll (0x76990000)
        cygfftw3-3.dll => /usr/bin/cygfftw3-3.dll (0x6bf60000)
        cygfftw3f-3.dll => /usr/bin/cygfftw3f-3.dll (0x6be80000)
        cygqrupdate-0.dll => /usr/bin/cygqrupdate-0.dll (0x65710000)
        IMM32.DLL => /mnt/c/Windows/system32/IMM32.DLL (0x76a40000)
        MSCTF.dll => /mnt/c/Windows/system32/MSCTF.dll (0x76fb0000)


Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Project Co-Leader          cygwin AT cygwin DOT com
Red Hat

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

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019