Max Horn wrote:
> 
> At 10:43 Uhr +0100 18.01.2002, Martin Costabel wrote:
> >Max Horn wrote:

> >>  Obviously, from the error message, this was *not* the usual install
> >>  program giving the error, but something different, but I fail to see
> >>  what it might be. Note that I can't reproduce the problem over here.
> >
> >There is an "Install" script in windowmaker's source directory which
> >talks just like this, but it has a capital I, so it shouldn't answer to
> >"install", despite all case-insensitivity.
> 
> Indeed. Also note that it works fine for me, and some other people
> that reported successful installs of windowmaker. Hrm. Could this be
> an UFS issue? I don't see how, but I can't think of much else.

In the meantime I have tried to understand the question of case
sensitivity of command names on HFS+. I found some weird things, and I
am giving up now before going completely crazy.

In short: If you are running bash (or sh or zsh), then command names are
completely case INsensitive, e.g. "install", "Install", or "iNsTaLl" are
completely equivalent, provided you have one of these in your PATH.

If you are running tcsh, then command names are sometimes case
sensitive, sometimes case insensitive, but which one it is is decided by
tcsh on a case-by-case basis and without reason. One rule is, though,
that if you give the complete path name, you have case insensitivity,
e.g. "/BIn/Ls" runs /bin/ls.

If you use only the command name, there is no rule I can understand:

I have both /bin/ls and /sw/bin/ls, and which one is executed depends of
the order of the paths in PATH. Now if I type "LS", I always get
/sw/bin/ls, no matter what order /bin and /sw/bin are in PATH. If I take
/sw/bin out of the PATH, "LS" gives "LS: command not found". "Ls" or
"lS" are not recognised at all.

martinc% where -a ls
/bin/ls
/sw/bin/ls
martinc% where -a LS
/sw/bin/LS           (I should say there is no /sw/bin/LS, only /sw/bin/ls)
martinc% where -a Ls
martinc% Ls
OK? rs? no
Ls: Command not found.
martinc% bash
bash-2.03$ type -a Ls
lS is /bin/Ls
lS is /sw/bin/Ls

My explanation for the case at hand (./Install executed instead of
/usr/bin/install when the make script uses "install") is that the user
uses HFS+, has "." in his PATH and that he is probably running bash, but
maybe he can have the same problem in tcsh if the weather is bad or he
didn't pay his shareware fees.

-- 
Martin

_______________________________________________
Fink-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/fink-devel

Reply via email to