iOS中的其他Mtouch参数

时间:2013-03-24 05:29:03

标签: ios mono xamarin.ios arguments monkeytalk

我有一个关于“附加mtouch参数”的快速问题

-gcc_flags "-lstdc++ -L${ProjectDir} -libMonkeyTalk-1.0.40 -lsqlite30 -framework CFNetwork -framework QuartzCore -all_load"

我将其作为一个额外的参数,但是当我构建我的iOS应用程序时,我收到以下错误。

Error MT5201: Native linking failed. Please review user flags provided to gcc: "-lstdc++" "-L/Users/henry/Downloads/HelloWorld_iPhone/HelloWorld_iPhone" "-libMonkeyTalk-1.0.40" "-lsqlite30" "-framework" "CFNetwork" "-framework" "QuartzCore" "-all_load" (MT5201) (HelloWorld_iPhone)

我该如何解决这个问题?我的论点有什么问题?我是否错过了添加MonkeyTalk lib的步骤或者其他错误?

1 个答案:

答案 0 :(得分:3)

MT5201错误表示运行原生链接器时构建失败。

最常见的问题之一与使用-gcc_flags的链接器的附加(和未经验证的)参数有关。这就是错误消息要求您查看它们的原因。

然而,这并不是链接失败的唯一原因。一旦查看,您应该查看构建日志(在XS错误板内)以查看链接器报告的警告/错误(甚至更早的消息)。

如果您的问题提供了完整其他mtouch参数,那么您的问题可能是与C ++库(您的"-lstdc++)链接,而没有告诉mtouch使用C ++编译器进行编译,使用--cxx

请注意,这是一个mtouch参数,不是一个链接器参数,因此 必须在--gcc_flags内。 E.g。

--cxx -gcc_flags "-lstdc++ -L${ProjectDir} -libMonkeyTalk-1.0.40 -lsqlite30 -framework CFNetwork -framework QuartzCore -all_load"