[mercury-users] Weird and annoying showstopper building Mercury 11.07.1
Julien Fischer
juliensf at csse.unimelb.edu.au
Tue Jul 31 23:01:39 AEST 2012
Hi,
On Tue, 31 Jul 2012, Michael Richter wrote:
> ./configure --enable-java --enable-erlang && make && sudo make install
>
> This terminates with:
>
> mmc --generate-dependencies --grade asm_fast.gc.debug
> --mercury-linkage shared --flags LIB_FLAGS --flags INTER_FLAGS
> --no-warn-nothing-exported --no-warn-unused-imports mer_std
> mercury_compile: `--host-env-type posix` is incompatible with
> `--csharp-compiler-type microsoft'.
> Mercury Compiler, version 11.07.1, configured for x86_64-unknown-linux-gnu
> Copyright (C) 1993-2012 The University of Melbourne
> Usage: mmc [<options>] <arguments>
> Use `mmc --help' for more information.
> make[2]: *** [mer_std.depend] Error 1
> make[2]: Leaving directory
> `/home/michael/Development/Mercury/mercury-compiler-11.07.1/install_grade_dir.asm_fast.gc.debug/library'
> To clean up from failed install, remove
> /home/michael/Development/Mercury/mercury-compiler-11.07.1/install_grade_dir.asm_fast.gc.debug
> make[1]: *** [install_grades] Error 1
> make[1]: Leaving directory
> `/home/michael/Development/Mercury/mercury-compiler-11.07.1'
> make: *** [install] Error 2
>
> This is all stuff which has been built on this very machine before, so
> something I've installed since then has confused the configure script into
> thinking I have the Microsoft C# compiler. A few questions, though:
>
> 1. Why is --csharp-compiler-type microsoft being issued *at all* given that
> I didn't --enable-csharp-grade nor --enable-dotnet-grade?
The test does not depend on them. The problem is likely being caused by
another executable named "csc" on your system (possibly the Chicken Scheme
compiler).
> 2. How is configure managing to think I have the Microsoft C# compiler on a
> POSIX system?
(Probably) because the test in for the presence of a C# compiler was just
looking at the executable name and its found an executable named csc?
(The test has subsequently been strengthened.)
> (As in, why is configure even *LOOKING* for the Microsoft
> compiler on a POSIX system?)
The Microsoft C# compiler is usable under Cygwin and for most purposes
it is a POSIX system.
> 3. How do I fix this?
You need to change the value of --csharp-compiler-type option in the
Mercury.config file from "microsoft" to either "unknown" or "mono"
(either should do).
In an installed system this file will reside in:
<install-prefix>/lib/mercury/conf/Mercury.config
In the source tree, this file lives in the scripts directory -- edit
its value after configuring.
> #3 is the most important part because I'm absolutely show-stopped right
> now. In a fit of stupidity I accidentally installed this over top of a
> working Mercury installation and now I have a completely broken setup.
> Zapping the whole /usr/local/mercury* thing isn't fixing it.
It should be fixable as I have outlined above. The original problem, i.e.
misidentifying the MS C# compiler, has been fixed in the 11.07.2 betas and
on the trunk.
Julien.
--------------------------------------------------------------------------
mercury-users mailing list
Post messages to: mercury-users at csse.unimelb.edu.au
Administrative Queries: owner-mercury-users at csse.unimelb.edu.au
Subscriptions: mercury-users-request at csse.unimelb.edu.au
--------------------------------------------------------------------------
More information about the users
mailing list