我正在开发 Xamarin 并尝试在我的 iPad 上安装 iOS 应用程序。
我想链接一个 Ada 静态库。
所以我有一个libMyLibrary.a
+libgnat.a
文件和一个 C 标头代码 ( MyLibrary.h
)。
- 在 Xamarin 中,我创建了一个绑定库项目并添加了我的库。
- 在 Xamarin 中,我添加了上述项目作为对我的 iPad 应用程序的引用。
为了与库通信,我使用了 P/InvokeDllImport(“__Internal”)
和我的库的一个程序集(所以我没有任何 MTouch 参数):
[assembly: LinkWith(“libMyLibrary.a”, SmartLink=true, ForceLoad=true)]
[assembly: LinkWith(“libgnat.a”, SmartLink=true, ForceLoad=true)]
但是当我将它部署到 iPad 时,我有很多本机链接错误:
Native linking error: warning: could not create compact unwind for XXX does not use standard frame (MT5209)
我尝试使用 monotouch 参数但没有成功:
-Wl,-no_compact_unwind
!请参阅ld:警告:用于紧凑展开的个性化程序太多,无法编码和https://software.intel.com/en-us/forums/intel-math-kernel-library/topic/279914LDFLAGS="-Wl,-no_compact_unwind
:见https://bugzilla.mozilla.org/show_bug.cgi?id=1188030#c14
有任何想法吗?
配置:
- iOS 10.3.2
- Xamarin 6.3
- 部署目标 10.3