[m-users.] Compiling Mercury Compiler with C++ on Linux using different Compiler
Julien Fischer
jfischer at opturion.com
Fri Jun 7 13:21:07 AEST 2013
Hi,
On Thu, 6 Jun 2013, John Adams wrote:
> My project would requires Mercury generated C code to be embedded in a
> C++ project.
That's fairly straightforward. The header files in the Mercury runtime
and those generated by the Mercury compiler are all compatible with C++,
so you can just export Mercury procedures, types and enumerations to C
as normal and then use them from C++.
The recommended way of using Mercury with C or C++ applications is to
use what's called a standalone-interface.
(See
<http://www.mercurylang.org/information/doc-latest/mercury_user_guide/Stand_002dalone-Interfaces.html#Stand_002dalone-Interfaces>
for details.)
> Hence I am interested in compiling Mercury under a C++ compiler (call
> is cxx) in Linux. I am only interested in High Level C grade.
You cannot (currently) compile Mercury generated code with a C++
compiler. (If you just want to call Mercury code from C++ then you do
not need to.)
> How do I only select High Level C grade with a different C++ compiler?
> Also, I would like Mercury native type to be mapped to C++'s "long
> long" instead of int. Can I do that?
No, Mercury's int tpye is defined (and required) to be the same size as
the word size of the machine. It will (and must) correspond to
whichever signed C/C++ integer type fulfills that requirement.
Cheers,
Julien.
More information about the users
mailing list