Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Native Linking errors in xamarin

I am try to compile my xamarin project today and suddenly i am getting these errors:

error MT5210: Native linking failed, undefined symbol: _mono_handle_global_vregs. Please verify that all the necessary frameworks have been referenced and native libraries are properly linked in.
error MT5210: Native linking failed, undefined symbol: _mono_inst_name. Please verify that all the necessary frameworks have been referenced and native libraries are properly linked in.
error MT5210: Native linking failed, undefined symbol: _mono_local_deadce. Please verify that all the necessary frameworks have been referenced and native libraries are properly linked in.
error MT5210: Native linking failed, undefined symbol: _mono_print_code. Please verify that all the necessary frameworks have been referenced and native libraries are properly linked in.
error MT5210: Native linking failed, undefined symbol: _mono_type_to_regmove. Please verify that all the necessary frameworks have been referenced and native libraries are properly linked in.
error MT5210: Native linking failed, undefined symbol: _type_to_eval_stack_type. Please verify that all the necessary frameworks have been referenced and native libraries are properly linked in.
error MT5202: Native linking failed. Please review the build log.

Can any one point me in any direction why these could be happening?

I have a Firebase iOS sdk added to the solution as binding project

like image 488
Kartik Avatar asked Jan 08 '14 17:01

Kartik


2 Answers

How i solved this: I had to uninstall Google Cloud Messaging and replaced it with Firebase Cloud Messaging and all works fine now.

like image 123
Tadej Avatar answered Oct 24 '22 16:10

Tadej


It is Xamarin bug -> Watch here. You should remove from additional mtouch arguments "--gcc_flags -load_all" to be able to build the project.

Update

@Kartik, Here you can find documentation about mtouch.

--gcc_flags means :

Add a number of flags directly to the gcc invocation linking the final binary. This can be used to link static code from another static library file (libXXX.a).The darwin linker will remove any code that it does not see directly referenced, add -ObjC to preserve all objective-c segments or -all_load to preserve all static libraries.

like image 36
Alexander Avatar answered Oct 24 '22 15:10

Alexander