[m-users.] Trouble building on MSYS2 Win10

Julien Fischer jfischer at opturion.com
Wed Apr 28 03:49:21 AEST 2021


Hi Mark,

On Tue, 27 Apr 2021, Mark Green wrote:

> I'm having two awkward problems on MSYS2 (other than the amazing amount of time it takes to build!)

The build system for Mercury relies heavily on GNU make which is known to
be quite slow on MinGW.

> 1. During the make process, it tells me that documentation could not
> be built "probably due to a missing info" and "probably due to a
> missing perl". Thing is, I explicitly installed info with pacman and
> perl is built into MSYS2.

The "probably" bit is important there's no way for the Mmakefile in the
doc directory to know exactly what the problem is.  At a guess, you are
missing some of the tools required to build the documentation, most
likely makeinfo and texi2dvi.

Installing the packages "texinfo" and "texinfo-tex" using pacman should
provide the above. (I haven't tested this, since attempting to update
my rather out-of-date msys2 installation just killed pacman completely
:-( )

> 2. When it tries to make the Java grade, it builds a bunch of .java
> file, outputs "making class files", then produces "The system cannot
> find the file specified." - the Windows shell "file not found"
> message, not the MSYS2 one. This seems to imply that it might be
> looking on the Windows path for Java rather than the MSYS2 one and
> therefore not finding it. Is there a way to fix this?

It is usually sufficient to include the JDK's bin directory on the MSYS
PATH (as per README.MinGW).  External commands invoked by the Mercury
compiler will run on the Window shell (i.e. whatever the enviroment
variable COMSPEC is pointing at, typically cmd.exe).  This should
inherit the MSYS PATH when the Mercury compiler is invoked in the MSYS
shell.

Julien.


More information about the users mailing list