bladecoding / BoIRResourceDecryption

GNU General Public License v3.0
25 stars 10 forks source link

Fails to compile on Linux (Mono) #1

Closed naelstrof closed 10 years ago

naelstrof commented 10 years ago

Compile fails because Mono doesn't seem to support the v4.5 framework very well. Or at least the ToolsVersion '14.0', whatever that is. (http://www.mono-project.com/docs/about-mono/compatibility/)

 naelstrof@Winston  ~/Projects/BoIRResourceDecryption/boir   master  xbuild boir.csproj
XBuild Engine Version 12.0
Mono, Version 3.10.0.0
Copyright (C) 2005-2013 Various Mono authors

Build started 11/9/2014 2:49:05 PM.
__________________________________________________
Project "/home/naelstrof/Projects/BoIRResourceDecryption/boir/boir.csproj" (default target(s)):
/home/naelstrof/Projects/BoIRResourceDecryption/boir/boir.csproj:  warning : Project has unknown ToolsVersion '14.0'. Using the default tools version '2.0' instead.
    Target PrepareForBuild:
        Configuration: Debug Platform: AnyCPU
    Target GetFrameworkPaths:
/usr/lib/mono/2.0/Microsoft.Common.targets:  warning : TargetFrameworkVersion 'v4.5' not supported by this toolset (ToolsVersion: 2.0).
    Target GenerateSatelliteAssemblies:
    No input files were specified for target GenerateSatelliteAssemblies, skipping.
    Target CoreCompile:
        Tool /usr/lib/mono/4.5/mcs.exe execution started with arguments: /noconfig /sdk:2 /debug:full /debug+ /optimize- /out:obj/Debug/boir.exe ANSI.cs BitReader.cs ExtensionMethods.cs LZWDecoder.cs LZWEncoder.cs Program.cs Properties/AssemblyInfo.cs StreamExt.cs /target:exe /unsafe+ /define:"DEBUG;TRACE" /platform:AnyCPU /reference:/usr/lib/mono/2.0/System.dll /reference:/usr/lib/mono/2.0/System.Core.dll /reference:/usr/lib/mono/2.0/System.Xml.Linq.dll /reference:/usr/lib/mono/2.0/System.Data.DataSetExtensions.dll /reference:/usr/lib/mono/gac/Microsoft.CSharp/4.0.0.0__b03f5f7f11d50a3a/Microsoft.CSharp.dll /reference:/usr/lib/mono/2.0/System.Data.dll /reference:/usr/lib/mono/2.0/System.Xml.dll /warn:4
Program.cs(7,14): error CS0234: The type or namespace name `Tasks' does not exist in the namespace `System.Threading'. Are you missing an assembly reference?
    Task "Csc" execution -- FAILED
    Done building target "CoreCompile" in project "/home/naelstrof/Projects/BoIRResourceDecryption/boir/boir.csproj".-- FAILED
Done building project "/home/naelstrof/Projects/BoIRResourceDecryption/boir/boir.csproj".-- FAILED

Build FAILED.

Warnings:

/home/naelstrof/Projects/BoIRResourceDecryption/boir/boir.csproj (default targets) ->

    /home/naelstrof/Projects/BoIRResourceDecryption/boir/boir.csproj:  warning : Project has unknown ToolsVersion '14.0'. Using the default tools version '2.0' instead.

/home/naelstrof/Projects/BoIRResourceDecryption/boir/boir.csproj (default targets) ->
/usr/lib/mono/2.0/Microsoft.Common.targets (GetFrameworkPaths target) ->

    /usr/lib/mono/2.0/Microsoft.Common.targets:  warning : TargetFrameworkVersion 'v4.5' not supported by this toolset (ToolsVersion: 2.0).

Errors:

/home/naelstrof/Projects/BoIRResourceDecryption/boir/boir.csproj (default targets) ->
/usr/lib/mono/2.0/Microsoft.CSharp.targets (CoreCompile target) ->

    Program.cs(7,14): error CS0234: The type or namespace name `Tasks' does not exist in the namespace `System.Threading'. Are you missing an assembly reference?

     2 Warning(s)
     1 Error(s)

Time Elapsed 00:00:00.5211280

It would be useful if you tagged a release and uploaded a binary since I, and maybe others, cannot compile it.

Olink commented 10 years ago

This code was built and coded for windows. Uploading a binary does nothing for you on linux. The fact that you don't seem to know anything about the error speaks volumes though. Feel free to make a pull request tho.

naelstrof commented 10 years ago

Linux can run windows C# binaries natively just fine. Also try not being so passive aggressive. Makes you seem like an ass.

flying-sheep commented 10 years ago

Exactly. the code was not “built and coded for windows”. It’s C#. It calls into .NET libraries that can be provided by Mono on all platforms.

Olink, maybe you should stop acting presumptuously like that (“speaks volumes”) if in fact you yourself have no idea what you’re talking about. I got it to compile, so i get to be presumptuous.

naelstrof commented 10 years ago

Fixed with #2