Intel Galileo .NET Support

1.6k Views Asked by At

I'm getting the following exception when trying to run a .NET OWIN selfhosting application on the Intel Galileo Gen 1 board:

 Unhandled Exception: System.Reflection.TargetInvocationException: Exception has
been thrown by the target of an invocation. ---> System.MissingMethodException:
Method not found: 'Boolean System.Type.op_Equality(System.Type, System.Type)'.
   at Microsoft.Owin.Hosting.Services.ActivatorUtilities.CreateFactory(Type type
)
   at Microsoft.Owin.Hosting.Services.ServiceProvider.Add(Type serviceType, Type
 implementationType)
   at Microsoft.Owin.Hosting.Services.ServicesFactory.<>c__DisplayClass1.<Create
>b__0(Type service, Type implementation)
   at Microsoft.Owin.Hosting.Services.ServicesFactory.<>c__DisplayClass4.<DoCall
back>b__3(Type service, Type implementation)
   at Microsoft.Owin.Hosting.Services.ServicesFactory.DoCallback(Action`2 callba
ck)
   at Microsoft.Owin.Hosting.Services.ServicesFactory.DoCallback(IDictionary`2 s
ettings, Action`2 callback)
   at Microsoft.Owin.Hosting.Services.ServicesFactory.Create(IDictionary`2 setti
ngs, Action`1 configuration)
   at Microsoft.Owin.Hosting.Services.ServicesFactory.Create(IDictionary`2 setti
ngs)
   at Microsoft.Owin.Hosting.WebApp.BuildServices(StartOptions options)
   at Microsoft.Owin.Hosting.WebApp.Start(StartOptions options)
   at Microsoft.Owin.Hosting.WebApp.Start[TStartup](StartOptions options)
   at Microsoft.Owin.Hosting.WebApp.Start[TStartup](String url)
   at Osborn.Galileo.OwinHost.Program.Main(String[] args)
   --- End of inner exception stack trace ---
   at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments,
 Signature sig, Boolean constructor)
   at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Objec
t[] parameters, Object[] arguments)
   at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invoke
Attr, Binder binder, Object[] parameters, CultureInfo culture)
   at AppDomainManager.HostMain(Int32 argc, Char** argv, Char* assemblyToRun, In
t32 flags)

My question is in two parts:

  1. Does the Intel Galileo version of Windows support .NET?
  2. If so, what version(s), and is it the full framework or only the client profile?
3

There are 3 best solutions below

0
On

Yes, the Galileo is supposed to support .NET, eventually. It's not quite all there yet. Check out the Windows Developer Program for IoT FAQ.

0
On

I doubt Galileo will ever run the .NET framework. It lacks modern instruction sets that .NET relies on. The faq someone else refers to just mentions "Universal App Model", which could just mean "WinRT" which is a C++ thing (but easily consumable from .NET if you have .NET available). But I'm not saying we won't see .NET on some device down the line...

Having said all that, you can use Jer's Mono port for running .NET apps on the galileo: http://jeremiahmorrill.wordpress.com/2014/09/05/mono-on-windows-for-intel-galileo-source-code/

It's not super fast, but it works for the most part.

0
On

For what it's worth, .Net CORE runtime will be around 11MB in size, and all projects will be able to run as stand-allone apps side by side with other .net projects running different dependencies.

The full .net stack (around 200MB) is not for IoT, it never was. Look for ASP.Net vNext on the net to get an idea of how things will look in the near future.