<div dir="ltr">I'm afraid that still didn't work even though the CMD test did. I've attached a full log.<div><br></div><div>Mark</div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, 29 Apr 2021 at 02:49, Julien Fischer <<a href="mailto:jfischer@opturion.com">jfischer@opturion.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><br>
Hi Mark,<br>
<br>
On Wed, 28 Apr 2021, Mark Green wrote:<br>
<br>
> I did try starting MSYS from a Windows Command Prompt, having updated<br>
> the PATH in that Windows Command Prompt to include javac, but that<br>
> also did not work, which implies that Mercury ignores the environment<br>
> it was started in? There seems therefore to be no way to get this to<br>
> work other than adding java to the default PATH for Windows which is a<br>
> security risk. Is it necessary to do that?<br>
<br>
On all Windows systems I have used it is sufficient just to include<br>
the JDK in the MSYS2 PATH. The MSYS2 PATH should be inherited by child<br>
processes started from it. Does that happen on your system? i.e.<br>
if you run cmd.exe directly from the MSYS2 shell and then enter the<br>
command:<br>
<br>
     C:> echo %PATH%<br>
<br>
does the resulting PATH contain what is in the MSYS2 PATH (suitably<br>
transliterated from Unix style paths to Windows ones) or not?<br>
<br>
Alternatively, if you compile the following C program in the MSYS<br>
shell; does the PATH it outputs match what is in the MSYS2 PATH?<br>
<br>
      #include <stdlib.h><br>
<br>
      int main(void) {<br>
         system("echo %PATH%");<br>
      }<br>
<br>
Julien.</blockquote></div>