当存档应用程序时,Xcode会抱怨缺少文件。

4
我正在使用一个外部库(RHAddressBook),在模拟器或设备上运行应用程序时没有问题。但是当我选择归档应用程序时,遇到了一个问题,它说 'RHAddressBook/AddressBook.h' 文件未找到 在这一行:#import <RHAddressBook/AddressBook.h> 我已经检查了调试和发布的头文件搜索路径是相同的。
不太确定还需要检查什么。
3个回答

3

当您设置开发构建的外部库时,可能需要更新构建设置以指定其他包含搜索路径。

当您进行存档构建时,这不是开发构建。您可能没有更新发布(或可能是分发)构建的包含搜索路径。

返回构建设置,并确保“Header Search Paths”针对存档使用的构建配置已更新。


“Header Search Paths” 在 Debug 和 Release 两种模式下完全相同。 - Peter Warbo
你是否为“RHAddressBook”库设置了其他构建设置,可能在发布配置中遗漏了一些? - rmaddy
1
不,我已经确保调试和发布配置之间的所有设置都是相同的。 - Peter Warbo
1
@maddy 我也尝试过编辑方案,对于我的运行配置,我已将配置设置为使用我的发布配置,它也可以编译和运行,没有任何问题。因此,我的发布配置似乎是完好无损的。只有当我尝试归档时,它才无法工作。 - Peter Warbo
有什么线索可以帮我解决这个问题吗? - Peter Warbo

2
我从这里适应了这个答案,但是由于我也遇到了RHAddressBook的同样问题,所以我认为需要进行一些改写。请注意,我希望这不会让任何人感到不满意。

  • 打开您的应用程序目标的Build Settings,在Header Search Paths下添加:

    "$(PROJECT_DIR)/.." 使递归启用

对于我来说,这对RHAddressBook有效。


是的,这对我起作用了。我曾经遇到过同样的问题,可以在设备和模拟器调试和发布中正常工作,但无法存档。你的答案解决了我的问题并节省了时间! - Yoon Lee

1

打开应用程序目标的构建设置,在头文件搜索路径下添加:

"$(SOURCE_ROOT)/ThirdParty/RHAddressBook"

这个路径是您项目文件夹下的RHAddressBook文件夹。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接