Mercury Bugs - mercury
View Issue Details
0000200mercuryBugpublic2011-06-10 03:522012-02-13 13:56
Reporterjuliensf 
Assigned Tojuliensf 
PrioritynormalSeverityminorReproducibilityhave not tried
StatusresolvedResolutionfixed 
PlatformOSOS Version
Product Version 
Target VersionFixed in Version 
Summary0000200: csharp grade does not install on Cygwin with Mono
DescriptionFrom mercury-users:

>>> Hello. I'm trying to compile Mercury version 11.01 in cygwin inside
>>> Windows XP. ./configure and make succeed. When I enter:
>>>
>>> make install LIBGRADES=csharp
>>>
>>> I get the error:
>>>
>>> cygwin warning:
>>> MS-DOS style path detected: ..\runtime\mercury_dotnet.cs
>>> Preferred POSIX equivalent is: ../runtime/mercury_dotnet.cs
>>> Making mer_std.dll
>>> ** Error making `mer_std.dll'.
>>> error CS2001: Source file `..runtimemercur
>>> dotnet.cs' could not be found
>>>
>>> I can't find the makefile that is using \ instead of /.
>>
>> It is library/Mmakefile:378, specifically these line:
>>
>> # Don't use Unix style paths with the Microsoft C# compiler.
>> ifeq ($(CSC),csc)
>> MLOBJS += ..\runtime\mercury_dotnet.cs
>> else
>> MLOBJS += ../runtime/mercury_dotnet.cs
>>
>> The above is a workaround for the fact that --link-object does not yet
>> do any path conversion.
>
> Thanks! That worked. I set both lines to:
> MLOBJS += ../runtime/mercury_dotnet.cs
>
> cygwin uses the Mono compiler. Perhaps Mono doesn't have a problem with Unix
> style paths?
Additional InformationIt appears as though the wrong assignment to MLOBJS in library/Mmakefile
is being made when we are telling the compiler to include mercury_dotnet.cs
TagsNo tags attached.
Attached Files

Notes
(0000451)
juliensf   
2012-02-13 13:56   
Both mono and MS C# now work correctly on Cygwin without requiring
modifications to Mmakefiles.

Issue History
2011-06-10 03:52juliensfNew Issue
2011-06-10 03:52juliensfStatusnew => assigned
2011-06-10 03:52juliensfAssigned To => juliensf
2012-02-13 13:56juliensfNote Added: 0000451
2012-02-13 13:56juliensfStatusassigned => resolved
2012-02-13 13:56juliensfResolutionopen => fixed