【问题标题】:Static library .a file not updating after perform change in .m files对 .m 文件执行更改后,静态库 .a 文件未更新
【发布时间】:2012-11-04 19:36:01
【问题描述】:

我已经使用行脚本文件创建了静态库项目。

然后我手动复制 .h 文件和 .a 文件并创建了一个框架。使用 iOS 通用框架方法。 但它在第一次创建时工作正常。但更改了 .m 文件中的小修改,其 未反映在创建的 staic 库 .a 文件中但在使用源文件时可以正常工作

如果您遇到类似的问题,请告诉我。

【问题讨论】:

  • 请描述源文件更改后您在做什么。您是手动构建库还是希望它自动构建?
  • 手动构建库,但我没有得到与更新的源文件相对应的 .a 文件。

标签: iphone ios static-libraries ios-frameworks


【解决方案1】:

我认为this post 回答了您的问题,xcode 中存在一个错误,根据签名,该帖子是由从事 xcode 产品的开发人员发布的。对它的回复显示了一个对我有用的解决方案,即:

  • 将静态库的位置显式设置为“相对于构建产品”
  • 使用良好的文本编辑器,编辑项目中的 project.pbxproj,例如MyProject.xcodeproj/project.pbxproj 并搜索如下一行包含您的库名称的行。确认 path= 条目没有路径,只有库文件的文件名。不得不这样做很讨厌,但我发现 xcode 并不能 100% 正确地做到这一点。

    {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libMyLibrary.a; sourceTree = BUILT_PRODUCTS_DIR; };

【讨论】:

    【解决方案2】:

    做一个干净的构建。工作项目可能指向旧的 .a 文件。清理项目,然后添加静态库。

    【讨论】:

    • 您好,我创建了新项目,然后引用了该框架。但没有结果。创建更改后的静态库项目后要构建项目吗?...
    【解决方案3】:

    检查并匹配 .a 文件的创建日期/时间,以确保它是在您对 .m 文件进行更改后生成的

    【讨论】:

      猜你喜欢
      • 2013-07-20
      • 1970-01-01
      • 2018-07-11
      • 1970-01-01
      • 2017-11-18
      • 1970-01-01
      • 1970-01-01
      • 2021-06-15
      相关资源
      最近更新 更多