3

我得到的错误:

in /Users/robert/Documents/funWithFrameworks/build/Debug-iphonesimulator/funWithFrameworks.framework/funWithFrameworks, can't link with a main executable

悬崖笔记:

  • 试图包括框架
  • 不想链接

更多细节:我正在为移动设备开发...提示,使用 Xcode 提示,我正在尝试制作我自己的自定义框架,我可以从另一个应用程序中包含它。到目前为止,我已经完成了以下工作:

  1. 创建一个新项目;一个基于 iPhone OS 窗口的应用程序。
  2. 转到目标信息-> 在包装下,将包装器扩展从应用程序更改为框架
  3. 转到操作-> 新构建阶段-> 复制标题。将标题的角色更改为“公共”
  4. 从我的应用程序中,我将框架添加到框架组。
4

4 回答 4

5

苹果明确表示不能在他们的手机上使用动态库。私有框架就是这样。

但是,您可以使用静态库。

于 2008-09-17T10:04:35.753 回答
1

Egil,这通常被认为是 iPhone 开发者协议第 3.3.2 节的含义之一,该协议(部分)禁止插件架构或其他框架。他们没有为与 iPhone 兼容的框架提供 Xcode 项目模板这一事实往往会强化这个想法,尽管这当然可能只是一个疏忽或他们在没有实际禁止的情况下不鼓励的事情。

这是否是该部分的预期含义,您必须向 Apple 询问,并可能咨询律师,但这就是经常提到的“无框架”想法的来源。

对于那些想要在 iPhone 应用程序中使用框架代码的人来说,另一种方法是使用框架代码来构建静态库。然后将其编译到应用程序中,而不是在运行时动态加载。它是应用程序可执行文件的一部分这一事实避免了对这部分协议的任何潜在担忧。

于 2008-12-20T22:11:33.410 回答
1

虽然不允许使用动态库,但您可以创建一个框架(使用静态库和 lipo)。

查看:http ://accu.org/index.php/journals/1594

于 2010-05-21T03:58:42.990 回答
0

我还没有为所谓的移动设备尝试过它,但我猜它与常规 Cocoa 应用程序的方法非常相似。看看这个教程:

嵌入式 Cocoa 框架

于 2008-09-17T01:54:37.240 回答