Stephen Harris wrote:
> No, he did not. I'll get back to that. I appreciate your calm response.
;-)
> This is what Angus initially said to me:
>
> "The installer searches the Registry in various ways in order to find the
> whereabouts of sh.exe, gswinc.exe, python.exe, etc. It's blindingly
> obvious that it should first ascertain whether these things are already
> in the PATH. Never mind ;-)"
Just in case you think I'm being rude in your direction, I'm not. The
"blindingly obvious" bit was aimed at myself.
> SH: I did not say that the LyX installer could not search the PATH.
> I said that this didn't contribute any information that couldn't be
> acquired by other means. Since the PATH can contain duplicated
> and non-existent entities it can't confirm reports from other means.
I can't parse this. The PATH doesn't confirm or deny anything. My PATH here
on a linux machine is
/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/home/angus/bin
meaning that "execvp" ("spawnvp" on Windows) will look only in these 5
directories when searching for the external application:
// Here, argv[0] is the name of the binary, typically
// defined in a converter without an absolute path name.
#if defined (_WIN32)
pid_t const cpid = spawnvp(_P_NOWAIT, argv[0], &*argv.begin());
#else // POSIX
pid_t const cpid = ::fork();
if (cpid == 0) {
execvp(argv[0], &*argv.begin());
_exit(1);
}
#endif
> I've just installed LyX without LyX or any helper applications in
> the Windows PATH environment variable. And it works. So can
> you tell me why it is "blindingly obvious" that LyX should first
> ascertain that these things are already in the PATH?
<shrug>Whether you like it or not, these apps can be found in LyX's copy of
the PATH, either from the global PATH or from the \path_prefix variable.
</shrug>
> It is not that I disagree with his explanation; it is that his
> explanation is not consistent with his initial claim, nor does it support
> that claim.
Well, I've done my best. I'm giving up now.
> I find that perplexing and a nice troubleshooting challenge.
;-)
--
Angus