我今天试图编译我的xamarin项目,突然我得到这些错误:

错误MT5210:本机链接失败,未定义符号:_mono_handle_global_vregs.请验证所有必要的框架是否已被引用,并且本机库是否正确 链接在.
错误MT5210:本机链接失败,未定义符号:_mono_inst_name。请验证是否已引用所有必要的框架,并且本机库已正确链接。
错误 MT5210:本机链接失败,未定义符号:_mono_local_deadce.请验证是否已引用所有必要的框架 和本机库正确链接。
错误MT5210:土着人 链接失败,未定义的符号:_mono_print_code。请核实 所有必要的框架都已被引用和本机库 被正确地连接起来。
错误MT5210:本机链接失败,未定义 符号:_mono_type_to_regmove.请确认所有必要的 框架已被引用,本机库已正确 链接在.
错误MT5210:本机链接失败,未定义符号:_type_to_eval_stack_type。请验证所有必要的框架是否已被引用,并且本机库是否正确 链接在.
错误MT5202:本机链接失败。请查看 构建日志。

任何人都可以指出我在任何方向,为什么这些可能会发生?

我有一个Firebase iOS sdk作为绑定项目添加到解决方案中

有帮助吗?

解决方案

它是Xamarin bug-> 看这儿。 您应该从其他mtouch参数"--gcc_flags-load_all"中删除,以便能够构建项目。

更新资料

@Kartik, 这里 你可以找到关于 mtouch.

--gcc_flags 手段 :

直接向链接final的gcc调用添加一些标志 二进制。这可以用来从另一个静态链接静态代码 库文件(libXXX.a)。Darwin链接器将删除它的任何代码 没有看到直接引用,添加-ObjC保留所有 目标c段或 -全部装载 以保留所有静态库。

其他提示

在xamarin.forms,对我来说,它是我的代码中的问题。我在pcl中使用了Java.Lang.Thread.Sleep(1000)。这在编译时在IOS上生成错误,这绝对不是iOS的兼容代码。

如何解决这个问题:我不得不卸载Google Cloud Messaging并用Firebase Cloud Messaging替换它,现在所有工作都很好。

确保您将参考文件设置在 References 文件夹,而不是 Native References 文件夹。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top