[mercury-users] Use .cs library files directly without mer_std.dll

Julien Fischer juliensf at csse.unimelb.edu.au
Sat Sep 8 23:22:01 AEST 2012




On Fri, 7 Sep 2012, Jeff Thompson wrote:

> On 9/6/2012 5:08 PM, Peter Wang wrote:
>> On Thu, 06 Sep 2012 15:46:04 -0700, Jeff Thompson <jeff at thefirst.org> 
>> wrote:
>>> Hello.  I am able to complie Mercury with the csharp grade to make
>>> mer_std.dll. But I would like my C# application to use the Mercury
>>> library .cs files directly, without needing to reference the mer_Std.dll
>>> assembly.
>>> 
>>> Is this possible?  It seems that "make install LIBGRADES=csharp" deletes
>>> the intermediate .cs files after it links them into mer_std.dll.  Is
>>> there a way to make the build process  preserve them?
>> touch .leave_tmp_dir before installing.
>
> Awesome!  This worked great.
>
> To compile the library .cs files directly (in Microsoft Visual C#), I had to 
> define the symbol MR_HIGHLEVEL_DATA to make rtti_implementation happy.  What 
> does MR_HIGHLEVEL_DATA do?

It needs to be defined if the code being compiled was generated using
the high-level data representation.  For the csharp grade, it always
needs to be defined since the C# backend always uses that
representation. 
(The old IL backend allowed either low-level or high-level
representations to be used and the csharp grade shares some C# foreign
procs with it.)

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