Hello Guido,

System.Type.op_Equality is new in .NET 4.0 and (iirc) is used by the compiler.

So your /Users/guivho/Mono/MCSubs/bin/Debug/MCSubs.dll is likely
compiled against .NET 4.0. MonoTouch has only partial support for 4.0
(otherwise it looks like the Silverlight profile). To fix this you
should recompile this assembly using the mscorlib.dll from MonoTouch -
that will also trap any other API differences (and further similar
issues).

Regards,
Sebastien

On Fri, Aug 26, 2011 at 8:39 AM, Guido Van Hoecke <[email protected]> wrote:
> MonoDevelop 2.6RC1, Mono framework 2.10.5_0, monotouch 4.0.6 crash
> with following stack trace:
>
> Missing method System.Type::op_Equality(Type,Type) in assembly
> /Developer/MonoTouch/usr/lib/mono/2.1/mscorlib.dll, referenced in
> assembly /Users/guivho/Mono/MCSubs/bin/Debug/MCSubs.dll
>
> Unhandled Exception: System.MissingMethodException: Method not found:
> 'System.Type.op_Equality'.
>  at MCSubs.MC.P (System.Object[] oa) [0x00000] in
> /Users/guivho/Mono/MCSubs/MC.cs:94
>  at YesAndNo.PlayYesAndNo.ViewWillAppear (Boolean animated) [0x00000]
> in /Users/guivho/Mono/YesAndNo/PlayYesAndNo.xib.cs:44
>  at (wrapper managed-to-native)
> MonoTouch.ObjCRuntime.Messaging:void_objc_msgSend_IntPtr_bool
> (intptr,intptr,intptr,bool)
>  at MonoTouch.UIKit.UINavigationController.PushViewController
> (MonoTouch.UIKit.UIViewController viewController, Boolean animated)
> [0x0001c] in 
> /Developer/MonoTouch/Source/monotouch/monotouch/UIKit/UINavigationController.g.cs:123
>  at YesAndNo.TableViewSource.NavRowSelected (MCiOSSubs.NavItem
> navItem) [0x00098] in
> /Users/guivho/Mono/YesAndNo/TableViewSource.cs:222
>  at YesAndNo.TableViewSource.RowSelected (MonoTouch.UIKit.UITableView
> tableView, MonoTouch.Foundation.NSIndexPath indexPath) [0x00051] in
> /Users/guivho/Mono/YesAndNo/TableViewSource.cs:191
>  at (wrapper managed-to-native)
> MonoTouch.UIKit.UIApplication:UIApplicationMain
> (int,string[],intptr,intptr)
>  at MonoTouch.UIKit.UIApplication.Main (System.String[] args,
> System.String principalClassName, System.String delegateClassName)
> [0x00038] in 
> /Developer/MonoTouch/Source/monotouch/monotouch/UIKit/UIApplication.cs:26
>  at MonoTouch.UIKit.UIApplication.Main (System.String[] args)
> [0x00000] in 
> /Developer/MonoTouch/Source/monotouch/monotouch/UIKit/UIApplication.cs:31
>  at YesAndNo.Application.Main (System.String[] args) [0x00000] in
> /Users/guivho/Mono/YesAndNo/Main.cs:15
> [ERROR] FATAL UNHANDLED EXCEPTION: System.MissingMethodException:
> Method not found: 'System.Type.op_Equality'.
>  at MCSubs.MC.P (System.Object[] oa) [0x00000] in
> /Users/guivho/Mono/MCSubs/MC.cs:94
>  at YesAndNo.PlayYesAndNo.ViewWillAppear (Boolean animated) [0x00000]
> in /Users/guivho/Mono/YesAndNo/PlayYesAndNo.xib.cs:44
>  at (wrapper managed-to-native)
> MonoTouch.ObjCRuntime.Messaging:void_objc_msgSend_IntPtr_bool
> (intptr,intptr,intptr,bool)
>  at MonoTouch.UIKit.UINavigationController.PushViewController
> (MonoTouch.UIKit.UIViewController viewController, Boolean animated)
> [0x0001c] in 
> /Developer/MonoTouch/Source/monotouch/monotouch/UIKit/UINavigationController.g.cs:123
>  at YesAndNo.TableViewSource.NavRowSelected (MCiOSSubs.NavItem
> navItem) [0x00098] in
> /Users/guivho/Mono/YesAndNo/TableViewSource.cs:222
>  at YesAndNo.TableViewSource.RowSelected (MonoTouch.UIKit.UITableView
> tableView, MonoTouch.Foundation.NSIndexPath indexPath) [0x00051] in
> /Users/guivho/Mono/YesAndNo/TableViewSource.cs:191
>  at (wrapper managed-to-native)
> MonoTouch.UIKit.UIApplication:UIApplicationMain
> (int,string[],intptr,intptr)
>  at MonoTouch.UIKit.UIApplication.Main (System.String[] args,
> System.String principalClassName, System.String delegateClassName)
> [0x00038] in 
> /Developer/MonoTouch/Source/monotouch/monotouch/UIKit/UIApplication.cs:26
>  at MonoTouch.UIKit.UIApplication.Main (System.String[] args)
> [0x00000] in 
> /Developer/MonoTouch/Source/monotouch/monotouch/UIKit/UIApplication.cs:31
>  at YesAndNo.Application.Main (System.String[] args) [0x00000] in
> /Users/guivho/Mono/YesAndNo/Main.cs:15
>
> In the current configuration the crash occurs in a library that was
> built for '.net framework 4', and the mt project targets runtime
> version 'Mono for iphone'. (This library is frequently used in other
> c# projects, asp.net as well as console projects).
>
> I was a bit hesitative whether this was a valid combination. To remove
> my doubts about this setup, I removed the reference to the external
> library, and linked the libraries' sources directly in the monotouch
> project. Same crash though, so apparently something is rotten in the
> state of ...
> _______________________________________________
> MonoTouch mailing list
> [email protected]
> http://lists.ximian.com/mailman/listinfo/monotouch
>
_______________________________________________
MonoTouch mailing list
[email protected]
http://lists.ximian.com/mailman/listinfo/monotouch

Reply via email to