我在Objective中有一个库,我想在单调中绑定它(xamarin工作室)。这个库使用的是我从第三方供应商下载的框架(“Firebase”框架)。我编译了这个库,它在XCode上构建得很好,然后为i386和armv7体系结构创建了.a文件,并使用lipo生成了lib.a文件。现在,我创建了一个绑定项目,并将我的.a文件添加到其中,生成了一个.linkwith.cs文件。但是,当我使用绑定项目时,它给出了以下错误:
"ld:框架未找到Firebase"
我的问题是-如何指定Firebase框架?我试过这个:
[assembly: LinkWith ("libtestfirebaseclient.a", LinkTarget.ArmV7 | LinkTarget.Simulator, ForceLoad = true, Frameworks = "CFNetwork Security Foundation Firebase")] 然而,问题似乎仍未得到解决。有人能告诉我如何为依赖于第三方框架的obj-c库创建绑定吗?
发布于 2013-03-07 08:19:09
您可能不需要将Firebase作为一个平台引用,而是(如果它没有包含在libtestfirebaseclient.a中),为它添加一个新的LinkWith属性:
[assembly: LinkWith ("libtestfirebaseclient.a", LinkTarget.ArmV7 | LinkTarget.Simulator, ForceLoad = true, Frameworks = "CFNetwork Security Foundation")]
[assembly: LinkWith ("libfirebase.a", LinkTarget.ArmV7 | LinkTarget.Simulator, ForceLoad = true, Frameworks = "CFNetwork Security Foundation")]发布于 2013-03-06 21:45:11
我建议确保您已经完成了所有必要的过程,比如完成ApiDefinition.cs文件,并在StructsAndEnums.cs文件中定义了所有必要的枚举等。而且,我很确定您不需要在LinkWith框架部分中包含Firebase。
在我看来,最好的解决方法是查看已经绑定在单调绑定存储库中的现有库,并确切地了解需要如何布局所有这些库。下载一个已绑定的库,查看每个东西是如何对应的,并对您的项目执行相同的操作。
在绑定目标-C库的网站上有一个详细的指南,还有一个绑定类型参考指南作为参考。
https://stackoverflow.com/questions/15256368
复制相似问题