Frage

I developed and built my application using F# and C# successfully using Xamarin Mac.

It was all fine and finished development, until I switched to App Store compilation. The compilation goes fine, and signs all the assemblies. However when I run the application, the point where it reaches my F# library, throws an exception of

Could not bind function op_Division in type Microsoft.FSharp.Core.Operators

Alternative: Could not bind function {0} in type {1} whichever the first external call is

I tried other variations, and I get the same error with different functions and different assemblies. It looks like the assemblies are not linked to the library, not sure if that's possible since the compilation succeeded and that's the point with strongly typing?

I didn't see this exception during development and test.

Does anyone know why same code work fine on debug and release, but not on app store compiled (all it does it signs assemblies with developer key), and any idea for resolution?

War es hilfreich?

Lösung

It turns out the linker was over optimising, and removing it from the assembly.

Changing "Linker Behavior." to "Link Framework SDKs Only." rather than "Link All" fixes the issue.

Thanks for the pointers

Andere Tipps

I know nothing about AppStore compilation, but it sounds like the tool Xamarin is using to bundle the app is missing a reference to the F# libraries.

Similar to this?
HttpClient missing from .Net portable subset while creating PCL in Xamarin

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top