Am 17.11.2020 um 20:54 schrieb tealhill via Cygwin:
Dear all:

### Background information (you can skip this)

 ...

### The problem

32-bit tools, such as 32-bit Cygwin, don't usually see the real System32 directory.  Instead, when they try to look inside System32, Windows shows them the contents of a different directory, which contains only 32-bit System32 tools.

If 32-bit Cygwin needs to run a 64-bit tool, such as pluck.exe (from Pluckeye) or wsl.exe (from the Windows Subsystem for Linux), it must look in a different directory instead.  It must look in C:\Windows\Sysnative.  In this virtual folder, 32-bit Cygwin can see all the 64-bit System32 tools.

If you try to run pluck.exe without specifying that it's in /cygdrive/c/Windows/Sysnative, you'll get the output:

[user@host ~]$ pluck
-bash: pluck: command not found

This 'virtual folder' stuff is non-obvious and confusing.  It took me some time to figure it all out.
I ran into this kind of problem myself. These virtual folders are a nuisance and it's bothersome and tricky to find out, especially as Sysnative is hidden by default. But that's a Windows issue, not a cygwin issue. Cygwin doesn't handle other Windows paths either.

### Proposed solution

Cygwin's /etc/profile sets the PATH.

Could /etc/profile please also add /cygdrive/c/Windows/Sysnative to the end of the PATH?
It doesn't add any other Windows folders so why this one. You should do that in your ~/.profile. I'd suggest however to make those virtual folders visible from Cygwin, so you could find the hidden stuff from /Windows with ls, echo, or `find`.
Thomas
--
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple

Reply via email to