繁体   English   中英

更改 static 库的源需要清理并在 xcode 中构建 4

[英]Changing the source of a static library needs clean and build in xcode 4

我有一个 iOS 项目,它建立在我们在不同 iOS 项目中使用的框架项目之上。 该框架作为 xcode 项目包含在应用项目中。 该应用程序项目依赖于框架的 static 库构建目标。 (类似于大多数开源库,如three20)

问题是,如果我在框架源代码中更改某些内容,则在构建和运行应用程序项目时不会重建 static 库。

进行清理然后构建并运行更改已正确编译。 由于显而易见的原因,每次我更改框架中的某些内容时都进行重建并不是一个好的修复方法。

是否有我必须更改的设置,以便 xcode 正确地将我的框架识别为脏并相应地构建它?

我正在使用 xcode 4.0.2

这是 xcode 4.0.2 中的错误(可能会在未来版本中修复)。 https://devforums.apple.com/thread/91711?start=25&tstart=0

  1. 在项目中的框架下将 static 库设置为:相对于构建产品
  2. 关闭 XCode
  3. 编辑 project.pbxproj 并删除 static 库的所有路径组件,以便只保留 filname,像这样(重要部分是“path = libLibrary.a”)

    A74F787413566130000D0AFC /* libLibrary.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; 路径 = libLibrary.a; sourceTree = BUILT_PRODUCTS_DIR; };

添加一个脚本步骤,将 main.m 文件设置为已修改

#Force dependencies' relink
touch MyProject/main.m

您可能缺少目标和 static 库之间的依赖关系。

为了添加依赖项:

  1. 将 static 库 Xcode 项目拖放到您的项目上

    1b。 将库添加到您的应用程序框架中(我知道它已经存在);

  2. select 你的目标; 显示信息窗格;

  3. go 到 Dependencies,点击“+”,然后点击 select 你的 static lib。

这些说明对 Xcode 3.2.x 有效,但我希望基于此,您可以使用 Xcode 4 轻松找到解决方法。

编辑:对于 Xcode 4,检查这个这个(问题的编辑部分以获取解决方法)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM