public inbox for cygwin@cygwin.com
 help / color / mirror / Atom feed
From: Linda Walsh <cygwin@tlinx.org>
To: cygwin@cygwin.com
Subject: Re: having 1 set of non-bin files w/separate {bin,lib}[32/64)? (was Re: please update the supported Cygwin package list ...)
Date: Sun, 04 Aug 2013 04:56:00 -0000	[thread overview]
Message-ID: <51FDDEF6.7040000@tlinx.org> (raw)
In-Reply-To: <CA+sc5mnedD4QA88fmNq31ECKA0zmeGnxjOFt_oNg4D-srLmSHg@mail.gmail.com>

Earnie Boyd wrote:
> On Sat, Aug 3, 2013 at 10:19 PM, Linda Walsh wrote:
>> Earnie Boyd wrote:
>>> However you the user have a choice of where to put things.  Frankly, I
>>> would use /cygwin and /cygwin32
>> ----
>>         And how does that get you the autoredirection I suggested with
>> the links in Windows/syswow64 and windows/system32?
> 
> You can't you have to segregate the environments.  You don't want to
> touch Windows system directories even to put Windows symlinks.
===
Why not?

> 
> You have two differing systems which can be controlled from the
> Desktop via iconed shortcuts that starts one or the other.  Windows is
> smart enough to know when you have a 64bit executable and when you
> don't. 
---

?!?   how would it link with 32-bit or 64-bit libraries which are both
in the path of "C:\windows\system32"?

When you are running under 32-win, you are running in the sysWOW64 subsystem
which maps 32-bit calls to the C:\windows\syswow64 directory.

I.e. if you look in 32-bit bash at C:\windows\system32, you are seeing
the syswow64 directory.

If you look in a 64-bit cmd.exe or bash at C:\windows\system32 you are seeing
the real thing.

For 32-bit apps that understand 64-bit paths, their is another virtual link
at C:\windows\sysnative that is only visible when you run under 32-bit win
and points to the real (64bit) C:\windows\system32 (which is full of 64-bit apps
on the real filesystem).

How do you think windows has all the libraries be the same name & path on  32-bit
windows and 64-bit windows?

That virtualization is supported EVEN if you have redirect-on-error turned off,
and even if you have UAC turned off -- it's built into the kernel -- but as
such, it isn't usable EXCEPT through those pathnames.

That means if you want to put a driver in C:\windows\system32 as a 32 bit driver
it will end up physically in C:\windows\syswow64, and if you are 64-bit driver,
you will end up in the real dir, but a win32 process will see the 64-bit driver
file under C:\windows\sysnative.

It is the only redirection that works when all others are turned off.

If you know of another, fine.  But to say not to use it when it is the only
method that could work transparently is ridiculous.


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

  reply	other threads:[~2013-08-04  4:56 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-07-27  3:32 please update the supported Cygwin package list to be distinct for 32-bit, 64-bit or both; and help on how install both in a merged fashion Kenneth Wolcott
2013-07-27  5:20 ` marco atzeri
2013-07-27  5:24   ` Kenneth Wolcott
2013-07-27  6:20     ` LRN
2013-07-27  7:26       ` Andrey Repin
2013-07-27 10:30         ` LRN
2013-07-27  6:29     ` marco atzeri
2013-07-27  7:57       ` Warren Young
     [not found]         ` <51F9A3BE.4020907@tlinx.org>
2013-08-01  0:28           ` having 1 set of non-bin files w/separate {bin,lib}[32/64)? (was Re: please update the supported Cygwin package list ...) Warren Young
2013-08-03 11:33             ` Linda Walsh
2013-08-03 15:48               ` Earnie Boyd
2013-08-04  2:19                 ` Linda Walsh
2013-08-04  3:54                   ` Earnie Boyd
2013-08-04  4:56                     ` Linda Walsh [this message]
2013-07-27  5:28 ` please update the supported Cygwin package list to be distinct for 32-bit, 64-bit or both; and help on how install both in a merged fashion Andrey Repin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=51FDDEF6.7040000@tlinx.org \
    --to=cygwin@tlinx.org \
    --cc=cygwin@cygwin.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).