用MonoTouch本机库绑定链接失败 [英] Linking failure with a MonoTouch native library binding
问题描述
我正在为 Wikitude SDK 创建本机库绑定.
I am creating native library binding for the Wikitude SDK.
MonoTouch应用失败链接:
The MonoTouch app fails linking:
架构armv7的未定义符号:
"std :: __ 1 :: basic_string,std :: __ 1 :: allocator> :: find_last_of(char const *,unsigned long,unsigned long)const",引用自: WtUnzip :: unzipFileTo(char const *,bool)在WikitudeSDK.a(wtunzip.o)中 ...
Undefined symbols for architecture armv7:
"std::__1::basic_string, std::__1::allocator >::find_last_of(char const*, unsigned long, unsigned long) const", referenced from: WtUnzip::unzipFileTo(char const*, bool)in WikitudeSDK.a(wtunzip.o) ...
我的链接对象:
[assembly: LinkWith ("WikitudeSDK.a", LinkTarget.ArmV7, Frameworks = "CoreVideo Security SystemConfiguration CoreMedia AVFoundation CFNetwork CoreLocation CoreMotion MediaPlayer OpenGLES QuartzCore CoreGraphics", ForceLoad = true, LinkerFlags = "-lsqlite3.0 -ObjC", IsCxx = true)]
我不得不承认我是MonoTouch/IOS领域的新手,因为我想让自己摆脱困境.
I have to admit that I am new to this MonoTouch/IOS world, by I am trying to get my head out of the water.
我应该怎么做才能链接我的应用程序?
What should I do to get my app to link?
推荐答案
我刚刚发现我需要在LinkWith中添加libc ++.我的新LinkWith看起来像这样:
I just figured that I needed to add libc++ in my LinkWith. My new LinkWith looks like this:
[assembly: LinkWith ("WikitudeSDK.a", LinkTarget.ArmV7, Frameworks = "CoreVideo Security SystemConfiguration CoreMedia AVFoundation CFNetwork CoreLocation CoreMotion MediaPlayer OpenGLES QuartzCore CoreGraphics", ForceLoad = true, LinkerFlags = "-lsqlite3.0 -ObjC -lc++", IsCxx = true)]
希望最终可以帮助他人.
Hopefully that can eventually help others.
这篇关于用MonoTouch本机库绑定链接失败的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!