Visual Studio中的静态编译库(.lib)是否可以链接到iOS应用程序中?
Will a statically compiled library (.lib) in Visual Studio be linkable into an iOS app?
从这个问题看来,这是可能的(但可能有问题)。我的问题是,我能反过来做吗,在Visual Studio中编译一个C/c++库,然后链接到xcode并在iOS设备上运行它。如果它真的有效,苹果会有问题吗?我知道他们不是dll的大粉丝,我也不太热衷于链接和开发一些苹果可以检测和禁止的技术(就像他们对动态链接库所做的那样)。
你不能这样做,因为微软编译器针对的架构与iOS运行的架构不同。这还只是开始。毫无疑问,还有无数其他原因导致它无法工作,但架构是最明显的障碍。
您提到的问题涉及同一平台上的两个不同的编译器。这个推理并不适用于两个不同平台的两个不同的编译器。
答案是你不能那样做。Windows平台上的编译器将使用特定于Windows平台且不适用于iOS的运行时库。因此,即使您可以解决编译器互操作性问题(这是您问题的"DLL部分"),也会有这个主要的阻塞点。
No.
你所提到的问题是关于使用由不同编译器生成的文件,但对于相同的平台。
你所说的是使用为一个平台生成的库,并在不同的操作系统甚至不同的体系结构上使用它(除非它是x86上的Mac)。不可能。
你可以尝试如果你找到一些编译器目标(生成代码)的目标平台。这样,你可以在PC上构建它,但结果文件只能在Mac(或任何你的目标平台)上运行。
相关文章:
- lambda参数转换为constexpr技巧,然后获取带链接的数组
- CMake-按正确顺序将项目与C运行时对象文件链接
- 从链接列表c++中删除一个项目
- 有根的二进制搜索树.保留与其父级的链接
- 读取文件的最后一行并输入到链接列表时出错
- 静态数据成员的问题-修复链接错误会导致编译器错误
- Qt & Firebase C++ SDK 在 iOS 上的链接问题
- xamarin-ios绑定上的本地链接错误
- Siphon为iOS模拟器构建,但为设备构建获得链接错误
- 与iOS项目上的C 库链接失败
- 不满意的链接错误在iOS但不是Android上,loadLibrary总是成功的
- IOS 目标链接 cocoa 堆栈库,该库写入 C++11 标准错误
- boost iOS链接错误
- 在 iOS 模拟器中使用库:与 Unix 一致性层链接
- 将 iOS 部署目标更改为 iOS 7.0 时C++ Xcode 5 的链接错误
- iOS静态库使用Scons链接器在错误的平台上搜索构建
- 编译iOS时Qt Creator Tesseract链接器错误
- 如何链接一个使用c++向量的iOS静态库,用于Delphi XE7
- 在iOS项目中使用外部FreeVerb C++类时发生链接器错误
- 预链接静态库的ios项目