【问题标题】:Create static library in Xcode 4在 Xcode 4 中创建静态库
【发布时间】:2011-11-18 01:58:10
【问题描述】:

我不知道如何在 Xcode 4 中创建可可触摸静态库。

我在 Xcode 3 中创建了静态库,它运行良好。我用this tutorial。感谢您的帮助。

第一步我创建可可触摸静态库

接下来我们可以在产品目录中看到我们的静态库。但是现在这个未编译的库。

下一步我添加一些objective-c 类。该类将执行各种操作,例如显示 NSLog 消息。

然后我确定编译源中存在这个类

之后我构建了我的目标

现在我在其他项目中使用这个静态库,但是当我使用它时,在将文件与我的静态库链接时出现错误。

【问题讨论】:

  • 您没有具体说明您面临的问题!
  • 在XCode3和XCode4中创建静态库是不同的——这是我的问题
  • 不同,但有何不同?
  • 当我使用 xcode 3 创建静态库时,我会执行下一步:-首先我添加新目标并选择“cocoa touch”->“静态库”-添加库后,我将其拖入编译源我的班级 .m - 接下来我构建我的静态库
  • 但我不知道如何在 XСode 4 中重复这些步骤

标签: ios cocoa-touch xcode4 static-libraries


【解决方案1】:

打开 Xcode > 创建新项目 > iOS > 框架和库 > Cocoa Touch 静态库

【讨论】:

  • 我照你写的做了。然后我创建了一些类并构建了我的库。之后,我将构建库和头文件类拖到我的另一个项目中。当我在静态库中导入标头并调用某些方法并运行后出现错误:ld:警告:忽略文件/Users/dev01/Desktop/libLiba.a,文件中缺少所需的架构 i386 架构 i386 的未定义符号:“_OBJC_CLASS_ $_MyClass”,引用自:new2AppDelegate.o 中的 objc-class-ref ld:未找到架构 i386 collect2 的符号:ld 返回 1 个退出状态
  • 什么是 /Users/dev01/Desktop/libLiba.a?
  • 我更改了我的帖子。现在我已经描述了创建静态库的步骤。
  • 您在为模拟器或实际设备编译项目时是否遇到该错误?它说架构 i386 缺失的事实听起来就像您为模拟器编译新项目,但静态库是为设备编译的。
  • 是的,我意识到了错误,正如您所写的那样。我为 iOS 设备构建我的静态库并在模拟器上运行它。你知道如何为模拟器和设备制作库吗?
【解决方案2】:

我自己也在为此苦苦挣扎,在another SO thread 上发现了这个:

iOS-Universal-Framework

【讨论】:

    【解决方案3】:

    要创建一个静态库,您可以尝试通过此处的示例来了解:http://www.raywenderlich.com/41377/creating-a-static-library-in-ios-tutorial

    【讨论】:

      猜你喜欢
      • 2011-12-07
      • 2012-03-19
      • 1970-01-01
      • 2014-09-28
      • 2011-12-06
      • 2013-01-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多