delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2009/01/21/22:30:49

X-Recipient: archive-cygwin AT delorie DOT com
X-SWARE-Spam-Status: No, hits=-2.4 required=5.0 tests=AWL,BAYES_00,SPF_HELO_PASS
X-Spam-Check-By: sourceware.org
Message-ID: <4977E7F5.1090604@cygwin.com>
Date: Wed, 21 Jan 2009 22:28:53 -0500
From: "Larry Hall (Cygwin)" <reply-to-list-only-lh AT cygwin DOT com>
Reply-To: cygwin AT cygwin DOT com
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.19) Gecko/20090101 Remi/2.0.0.19-1.fc8.remi Lightning/0.9 Thunderbird/2.0.0.19 Mnenhy/0.7.5.0
MIME-Version: 1.0
To: cygwin AT cygwin DOT com
Subject: Re: Questions about missing DLLs and program behvior, and symlinks to DLLs
References: <496AC6E9 DOT 3090709 AT sylvan-glade DOT com> <20090112161848 DOT GB5218 AT ednor DOT casa DOT cgf DOT cx> <4977C456 DOT 8010103 AT sylvan-glade DOT com>
In-Reply-To: <4977C456.8010103@sylvan-glade.com>
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.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

Ray Simard wrote:
> Christopher Faylor wrote:
>> On Sun, Jan 11, 2009 at 08:28:25PM -0800, rhs DOT cygwin AT sylvan-glade DOT com wrote:
>>> Hello!  I haven't been able to find anything about this in the archives.
>> ...
> 
>>> shows, programs simply exit silently and unceremoniously when that happens.
>> That is fixed in Cygwin 1.7.x.
> 
> Good news.
>>> Second, symlinking to DLLs doesn't enable programs to find them, as is
>>> also shown below.
>> Right.  Symlinks are a Cygwin invention.  Cygwin doesn't start running
>> until after DLLs are loaded.  So, since Windows does not know about Cygwin
>> symlinks there is no way that they can be used to symlink DLLs.
> 
> True; they are .lnk files with a special comment, IIRC. I'd just like to
> make sure I understand this.  Suppose I compile bar.dll and
> libbar.dll.a, and then foo.exe with -lbar.dll, so it uses that DLL, and
> these are compiled entirely within the Cygwin environment (thus using
> Cygwin's gcc and related tools). I then launch it from the command line
> of a bash shell running in a Cygwin xterm. What I think you're saying is
> that there there is something that foo.exe needs to do before it can
> understand Cygwin symlinks, and that something is done sometime *after*
> it needs to actually load bar.dll, which prevents it from finding
> bar.dll if the DLL's name is actually bar-froob.dll and bar.dll is a
> symlink to it.  Is that the idea?

Ah, not quite.  DLLs are loaded by the O/S, not Cygwin.  So if the O/S
can't find the DLL referenced, it won't load it.  Since the O/S
doesn't know that Cygwin's bar.dll.lnk is a symbolic link to bar.dll,
it's not going to find bar.dll.

> If so, then it's just a matter of putting the real DLLs in the paths
> Windoze searches for them.  Symlinks would be nice, but if you can't,
> you can't.

Right.

-- 
Larry Hall                              http://www.rfk.com
RFK Partners, Inc.                      (508) 893-9779 - RFK Office
216 Dalton Rd.                          (508) 893-9889 - FAX
Holliston, MA 01746

_____________________________________________________________________

A: Yes.
 > Q: Are you sure?
 >> A: Because it reverses the logical flow of conversation.
 >>> Q: Why is top posting annoying in email?

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

- Raw text -


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