静态 cocoa/cocoa-touch 库应该基于啥样的 SDK?

Posted

技术标签:

【中文标题】静态 cocoa/cocoa-touch 库应该基于啥样的 SDK?【英文标题】:What kind of SDK should static cocoa/cocoa-touch library be based on?静态 cocoa/cocoa-touch 库应该基于什么样的 SDK? 【发布时间】:2011-02-26 13:24:28 【问题描述】:

我会尽量简短。

我正在尝试为 ios 和 OS X 构建一个静态库。看起来与静态库一起使用的 SDK(iOS/Mac OS X)应该是相同的作为链接到这个库的目标。

有没有什么方法可以创建一个不依赖于任何一个 SDK 的通用静态库?还是我应该只构建 SDK 特定的库?

使用错误类型的静态库的问题之一是链接器抛出一个错误,与没有为继承 NSObject 的类找到 [super init] 相关。

另外,X_Prefix.pch 似乎在构建桌面和iOS 库时有不同的内容。我应该如何处理这两个平台之间可能存在的其他差异?

【问题讨论】:

现在我傻傻地认为自己聪明了一点,这个问题很愚蠢。当然,Xcode 构建目标必须不同(因此静态库也必须不同),这样可以提供目标将链接到的特定库。 【参考方案1】:

这在另一个 SO 问题中得到了回答,我只是一开始不知道如何找到它:Build fat static library (device + simulator) using Xcode and SDK 4+

【讨论】:

以上是关于静态 cocoa/cocoa-touch 库应该基于啥样的 SDK?的主要内容,如果未能解决你的问题,请参考以下文章

是否应该从 C++ 中的静态库项目中删除 stdafx.h/.cpp? [关闭]

从动态加载的控制器中无法访问静态

Visual Studio 2010 不会自动链接来自依赖项的项目中的静态库,因为它应该是

opencv静态链接库cmake链接顺序问题

__declspec(dllexport) 静态链接库到 dll

配置使用OpenCV静态链接库