【发布时间】:2016-08-02 09:29:36
【问题描述】:
我试图弄清楚如何为我拥有的静态库创建一个有效的绑定项目。我们没有自己创建静态库,但我们有权使用它。
我尝试按照此页面上的步骤操作但没有成功:https://developer.xamarin.com/guides/ios/advanced_topics/binding_objective-c/walkthrough/
基本上发生的事情是,当运行命令“sharpie bind --sdk=iphoneos9.3 *.a”时,我得到了一个错误列表(见帖子底部) 因此,在玩了几个小时之后,我决定阅读 ApiDefinition。显然,上面链接的指南中描述的过程已被弃用,我应该将 .a 文件添加为本地参考。
根据 ApiDefinition 中的 cmets,我们必须手动创建绑定。问题是,我不知道库中的方法名称。另外,即使我这样做了,库也很大(我们桌面版本的头文件已经有 36k 行)。
有人可以告诉我们如何进行吗?
Sharpie 命令的错误列表:
Macbook-Pro:iossdk researchdevelopment$ sharpie bind --sdk=iphoneos9.3 libHCNetSDK_sim.a
Parsing 1 header files...
warning: /Users/researchdevelopment/Desktop/iossdk/libHCNetSDK_sim.a: 'linker' input unused
warning: argument unused during compilation: '-c'
warning: argument unused during compilation: '-fno-spell-checking'
warning: argument unused during compilation: '-Xclang -detailed-preprocessing-record'
warning: argument unused during compilation: '-isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.3.sdk'
warning: argument unused during compilation: '-D NS_BUILD_32_LIKE_64'
warning: argument unused during compilation: '-miphoneos-version-min=9.3'
warning: argument unused during compilation: '-I /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include'
warning: argument unused during compilation: '-I /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1'
error: unable to handle compilation, expected exactly one compiler job in ''
Error while processing /Users/researchdevelopment/Desktop/iossdk/libHCNetSDK_sim.a.
Submitting usage data to Xamarin...
Submitted - thank you for helping to improve Objective Sharpie!
Done. Exiting with error code 1.
error: Clang failed to parse input and exited with code 1
【问题讨论】:
-
您可以访问本机库的头文件吗? Objective Sharpie 解析这些头文件以提取方法签名以生成 ApiDefinition.cs 和 StructsAndEnums.cs 文件
-
我确实有头文件,但 Objective Sharpie 似乎无法解析它们。我尝试修改头文件并删除部分,但它生成的只是一个 StructsAndEnums.cs 而没有 ApiDefinition.cs 。关于它为什么这样做的任何线索?解决这个问题也能解决我的主要问题吗?
标签: xamarin.ios