<html><head><meta http-equiv="Content-Type" content="text/html charset=iso-8859-1"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">Hi,<div><br></div><div>Further to the previous message, I tried building without the Erlang grade and after using the Visual Studio Command Prompt to start MSYS, but the IL grade still failed - it finds CSC ok, but again uses paths relative to "." to provide paths to CSC, so CSC starts trying to resolve them relative to the directory where msys.bat is. Which is especially annoying since I made sure to CD the Windows command prompt to the Mercury source directory before starting msys :(</div><div><br><div apple-content-edited="true">
<span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; "><div>Mark Green</div><div><a href="mailto:mgreen@brookes.ac.uk">mgreen@brookes.ac.uk</a></div><div><br></div></span><br class="Apple-interchange-newline">

</div>
<br><div><div>On 29 May 2013, at 22:03, Mark Green <<a href="mailto:mgreen@brookes.ac.uk">mgreen@brookes.ac.uk</a>> wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div dir="ltr">Hi,<div><br></div><div>Thanks for your reply. The Erlang grade error turns out to be because it calls the Erlang compiler? with the parameters "-I ./mercury/erls -O ./mercury/beams" and . isn't where it expects it to be.  The problem is, I don't really think that this is easily fixable by setting the PATH up because Erlang will not look on the PATH for relative input and output directories.</div>
<div><br></div><div style="">On another note, is there anything close to an IDE for Mercury? I'm having a play with making custom interfaces for IntelliJ Platform and wondering if it could be used to do something, although its parser generator may not be sophisticated enough to do the operator syntax without colossal problems.</div>
<div style=""><br></div><div style="">Mark</div><div style=""><br></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On 29 May 2013 14:48, Julien Fischer <span dir="ltr"><<a href="mailto:jfischer@opturion.com" target="_blank">jfischer@opturion.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
Hi,<div class="im"><br>
<br>
On Wed, 29 May 2013, Mark Green wrote:<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Yes, I do mean the non-C grades. Specifically, the csharp grade seemed<br>
to fail due to looking for files in the Windows execution path for the<br>
MingW shell rather than in the active directory within MingW. I tried<br>
building a new shortcut to start the MingW shell in the Mercury<br>
srcdist directory but so far I haven't been able to test it because of<br>
the long time taken to get to the csharp grade.<br>
</blockquote>
<br></div>
One of the issues here is that although you are building Mercury inside<br>
the MSYS shell, when the Mercury compiler itself starts up an external<br>
process via a call to system() it does  it via what ever command<br>
interpreter the environment variable COMSPEC is pointing to; that's<br>
typically cmd.exe**.  IIRC, the child cmd.exe instance should inherit<br>
the environment from the MSYS shell, but it's rather picky about<br>
how the directory paths are specified.  (In practice none of this -- or<br>
indeed what follows -- seems to be terribly consistent between different<br>
versions of Windows either.)<br>
<br>
** this is not so strange, the intent of building things with MinGW<br>
is to produce a compiler that runs natively on Windows.<br>
<br>
One way around all this is to invoke the ``Visual Studio Command<br>
Prompt'' shortcut (or whatever it's called, the name varies between<br>
different versions of Windows and / or Visual Studio) and then start MSYS<br>
from within that cmd.exe instance (i.e. run C:\MinGW\msys\1.0\msys.bat).<br>
I think things should be okay then; provided you can correctly invoke<br>
csc from the MSYS shell.  (I'll check this tomorrow, I don't have access<br>
to a Windows machine at the moment.)<br>
<br>
[We should probably have a configure test that checks that the C#<br>
compiler can be invoked correctly via a call to system() (or whatever is<br>
used): I'll look into adding one.]<br>
<br>
Also, it is crucial that when specifying the installation directory for<br>
Mercury, with configure's `--prefix' option, that it be a Windows style<br>
path rather than a Unix style one.<div class="im"><br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
The Erlang grade fails with a file not found error when building the<br>
first beam file. I tried enabling verbose-commands as before; I don't<br>
have the log to hand right now, though.<br>
</blockquote>
<br></div>
It's probably a similar issue to the above (the same would apply to the<br>
Java grade when building with MinGW / MSYS).<div class="im"><br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Just to clarify I am talking about restarting an install that failed<br>
midway through, not one that was configured with a smaller number of<br>
grades. I ran configure and make with all grades enabled but make<br>
install failed after installing the C grades. It's really awkward if I<br>
really have to just sit and wait while asm_fast.gc etc are built only<br>
for the installer to report that all the files are unchanged and just<br>
delete all the work it did in the last two hours :(<br>
</blockquote>
<br></div>
Restarting the installation for a subset of grades was discussed<br>
elsewhere in this thread.  One thing I think we can do here is<br>
make configure do some stronger checks that everything is working<br>
properly, *before* everything is compiled.<br>
<br>
Cheers,<br>
Julien.<br>
</blockquote></div><br></div>
</blockquote></div><br></div></body></html>