IL2BC allows you to use C# instead of C++ to compile native cross-platform applications. Additionally IL2BC can convert any MSIL DLL into LLVM IR.
IL2BC is not providing .NET Framework functionality
Hello World (C# code)
using System;
class X {
public static int Main (string [] args)
{
Console.WriteLine ("Hello, World!");
return 0;
}
}
Il2Bc.exe helloworld.cs /corelib:CoreLib.dll
Il2Bc.exe CoreLib.dll
It will generate 2 files helloworld.ll and CoreLib.ll
llc -filetype=obj -mtriple=i686-w64-mingw32 CoreLib.ll
llc -filetype=obj -mtriple=i686-w64-mingw32 helloworld.ll
g++ -o helloworld.exe helloworld.obj CoreLib.obj -lstdc++ -lgc-lib -march=i686 -L .
It will generate exe file helloworld.exe which can be executed
PS. To Compile EXE file you need to have LLVM 3.6 and GCC MinGW which you can download from the following links
PS2. You can download binaries from the site [http://csnative.codeplex.com/] http://csnative.codeplex.com/