On 2023-12-17 07:29, Karl Crary via Cygwin wrote:
On Sun, Dec 17, 2023 at 8:45 AM Karl Crary wrote:
On 12/17/2023 7:29 AM, Eliot Moss wrote:
On 12/16/2023 10:55 PM, Karl Crary via Cygwin wrote:
I am encountering a bug wherein Cygwin is not passing arguments to most
Windows programs (although Cygwin programs are doing fine).
For example, the following command ought to be dumping a lot of usage information, but instead it starts a command prompt, which is what it
does when not passed any argument.
$ cmd /?
Microsoft Windows [Version 10.0.22621.2715]
(c) Microsoft Corporation. All rights reserved.
C:\crary>
I am experiencing the same behavior with bash, tcsh, zsh, and also make. In addition to cmd, I've also confirmed that arguments are not
being passed to wsl, explorer, and (Miktex's) latex.  Some third-party
apps are getting their arguments, including Standard ML of New Jersey.
This is a brand-new install on a brand-new Windows 11 machine. (A Dell Precision 3660 tower, if that matters.) I also tried varying the
cygwin dll version (a little, not exhaustively) to no effect.
Any theory as to what could be going on would be most appreciated.
My cygcheck output (lightly redacted) follows.

Cygwin's shell (generally bash) will try to pattern match ("glob") the
/? because of the ?. I get intended results if I type:
cmd '/?'
Because what is in the root directory / may vary from system to system, behavior without the quotes will may vary.
>> Thank you, but I guess I posted a bad example then.
>> latex --version
>> This is pdfTeX, Version 3.141592653-2.6-1.40.25 (MiKTeX 23.10.12)
>> (preloaded fomat=latex.fmt)
>>    restricted \write18 enabled.
>> **
>> It should print version information, but instead that is what I would
>> expect to see if I ran latex with no arguments.  The same thing happens if
>> I call latex with a filename.  Or, to fix my previous example:
>> $ cmd '/?'
>> Microsoft Windows [Version 10.0.22621.2861]
>> (c) Microsoft Corporation. All rights reserved.
>> C:\crary>
>> Any other thoughts?

> I have stumbled on to a fix, but I am still puzzled. The problem arises
> when either of the following lines appears in my /etc/fstab:
> c: /c ntfs binary,noacl,cygexec,user 0 0
> c: /home ntfs binary,noacl,cygexec,user 0 0
> I've taken them out and it's working now, but I'm still puzzled by how
> those lines created the problem. Those lines worked verbatim on my last
> Cygwin installation; what changed?

$ man mount [NOTE: Reference to missing section "The Cygwin Mount Table"]

Looks like bugs have been fixed and /etc/fstab mount option cygexec is now skipping or overriding detection of *Windows* executables, treating all files as *Cygwin* executables, which expect their extended command line elsewhere, and are launched without arguments in the DOS command buffer.

--
Take care. Thanks, Brian Inglis              Calgary, Alberta, Canada

La perfection est atteinte                   Perfection is achieved
non pas lorsqu'il n'y a plus rien à ajouter  not when there is no more to add
mais lorsqu'il n'y a plus rien à retirer     but when there is no more to cut
                                -- Antoine de Saint-Exupéry


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