Objective c Monotouch绑定ObjC库

Objective c Monotouch绑定ObjC库,objective-c,binding,xamarin.ios,static-libraries,Objective C,Binding,Xamarin.ios,Static Libraries,我在构建fat二进制文件时出错: ld: symbol(s) not found for architecture i386 (or arm7 for device) collect2: ld returned 1 exit status error MT5202: Native linking failed. Please review the build log. 即使我在ApiDefinition中只放置了一个防御(AWView)。包括所有依赖项 尽管如此,在xcode中一切正常 这里

我在构建fat二进制文件时出错:

ld: symbol(s) not found for architecture i386 (or arm7 for device)
collect2: ld returned 1 exit status

error MT5202: Native linking failed. Please review the build log.
即使我在ApiDefinition中只放置了一个防御(AWView)。包括所有依赖项

尽管如此,在xcode中一切正常

这里是一个链接

另外,“xcrun-sdk iphoneos lipo-info/…../libAdWired.a”告诉我们


fat文件libAdWired.a中的体系结构是:i386 armv6 armv7


尝试编译一个实际的设备,它将以armv7架构为目标。。。。您的objc库没有使用i386架构进行编译,可能只是armv7。通过转到terminal并使用以下命令,您可以查看其中编译了哪些体系结构:

file libSomeLibrary.a
这将告诉您编译库中的所有体系结构。
所以,只需选择Debug->iPhone而不是iphonesimulator,您就不会得到相同的错误

我必须解放我的思想,我喜欢/喜欢单键绑定,所以请尝试一下

希望这有帮助


Alex

您也可以确保在构建库时也以i386为目标,如果您有权这样做的话。fat文件中的架构:libAdWired.a是:i386 armv6 armv7作为旁注,此库有点旧,因此如果将其用于iOS 6,您应该小心,因为iOS 6不推荐使用
UUID
,而支持
iOS 6广告标识符(IDFA)
。因此,我建议直接与AdWired进行检查