delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin-developers/1999/09/07/22:38:47

Mailing-List: contact cygwin-developers-help AT sourceware DOT cygnus DOT com; run by ezmlm
List-Unsubscribe: <mailto:cygwin-developers-unsubscribe-archive-cygwin-developers=delorie DOT com AT sourceware DOT cygnus DOT com>
List-Subscribe: <mailto:cygwin-developers-subscribe AT sourceware DOT cygnus DOT com>
List-Archive: <http://sourceware.cygnus.com/ml/cygwin-developers/>
List-Post: <mailto:cygwin-developers AT sourceware DOT cygnus DOT com>
List-Help: <mailto:cygwin-developers-help AT sourceware DOT cygnus DOT com>, <http://sourceware.cygnus.com/ml/#faqs>
Sender: cygwin-developers-owner AT sourceware DOT cygnus DOT com
Delivered-To: mailing list cygwin-developers AT sourceware DOT cygnus DOT com
From: Chris Faylor <cgf AT cygnus DOT com>
Date: Tue, 7 Sep 1999 22:40:26 -0400
To: Andrew Dalgleish <andrewd AT axonet DOT com DOT au>
Cc: "'cygwin-developers AT sourceware DOT cygnus DOT com'" <cygwin-developers AT sourceware DOT cygnus DOT com>
Subject: Re: A trick for installing cygwin natively
Message-ID: <19990907224026.B3568@cygnus.com>
Reply-To: cygwin-developers AT sourceware DOT cygnus DOT com
Mail-Followup-To: Andrew Dalgleish <andrewd AT axonet DOT com DOT au>,
"'cygwin-developers AT sourceware DOT cygnus DOT com'" <cygwin-developers AT sourceware DOT cygnus DOT com>
References: <00F8D6E8AB0DD3118F1A006008186C96035174 AT server1 DOT axonet DOT com DOT au>
Mime-Version: 1.0
X-Mailer: Mutt 0.95.6i
In-Reply-To: <00F8D6E8AB0DD3118F1A006008186C96035174@server1.axonet.com.au>; from Andrew Dalgleish on Wed, Sep 08, 1999 at 10:50:48AM +1000

On Wed, Sep 08, 1999 at 10:50:48AM +1000, Andrew Dalgleish wrote:
>
>
>> -----Original Message-----
>> From:	Chris Faylor [SMTP:cgf AT cygnus DOT com]
>> Sent:	Tuesday, September 07, 1999 12:59
>> To:	cygwin-developers AT sourceware DOT cygnus DOT com
>> Subject:	A trick for installing cygwin natively
>> 
>>I've been having a devil of a time lately (sorry, I've just watched two
>>British movies in a row) trying to install a complete source tree into
>>a new "root" cygwin directory.  Every time, the top level make install
>>hit the winsup directory, the installation would go crazy because it
>>was installing a new cygwin1.dll and the /bin/sh that was being run was
>>using the old one.
>>
>>I tried making sure that nothing in the new root directory was in the
>>path but that didn't help because many things reference /bin/sh
>>directory.  I tried renaming the dll out of the way, which worked, but
>>fork didn't like that at all.
>>
>>My solution is to do this:
>>
>>mount -b c:\oldcygwin\bin\sh.exe /bin/sh
>>
>>Then, any time that somebody (i.e., make) wants to run /bin/sh it uses
>>the older version of both /bin/sh and the cygwin1.dll.
>>
>>It works great.
>>
>>I thought that I'd pass this tidbit along in case anyone else was
>>having similar difficulties.
>
>I'm not sure I understand.  Actually I am sure I don't understand.  :-)
>
>Apparently you can mount files as well as directories.  Neat trick, but
>how does that help with the dll version skew problems?
>
>Why won't "mount -b c:\oldcygwin\bin /bin" do the same thing?
>
>(I think I just answered my own question.  You are mounting the "old"
>sh.exe over the top of your "new" /bin directory.  Because of the path
>search sequence Windows uses, loads the DLL from the same directory as
>the .EXE, but that directory is not your new /bin.  Am I close?  If so,
>it is a very neat trick.)

Yes.  That's pretty much it.  As soon as you install a cygwin1.dll in
your newly created /bin, Windows will try to use it iff you're also
running /bin/sh from that directory.  If you aren't running any
programs from that directory then everything works fine.

Of course, you should remember to umount /bin/sh when you're done.
-chris

- Raw text -


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