1

我正在将第 3 方静态库导入我的 iOS 应用程序(使用 Xcode 5.1.1)。在构建项目时,我收到数百条以下类型的警告:

warning: (i386) /Users/USERNAME/Desktop/Development/SDKNAME/AWSS3.framework/AWSS3(S3ListObjectsResult.o) unable to open object file

这些警告是由dsymutil在尝试生成 DSYM 文件时引起的。出于某种原因,dsymutil 试图在构建框架的开发人员的本地路径中查找框架中包含的代码的目标文件。

静态库中的哪些构建设置会导致这样的问题?

我在 Stack Overflow 和其他平台上发现了一些响应:这些 Dsymutil 警告在 XCode 4.5 中意味着什么?但他们都没有真正解释潜在的问题。

我对 Mach-O/DSYM 很陌生,所以如果您需要任何其他信息来了解问题所在,请告诉我。

4

2 回答 2

0

正如您链接到的帖子中的答案之一所述,这是您无法控制的图书馆问题。您的链接器会看到库中无法打开的对象。我在使用不同的框架时遇到了同样的问题,正在等待供应商向我发送使用更新版本的 llvm 编译的更新版本。我建议你也这样做并联系图书馆的作者。

编辑 8/26:刚刚得到图书馆作者的确认。出现这些警告的原因是项目中发布版本的符号剥离设置不正确。

于 2014-08-22T19:17:51.173 回答
0

我也面临同样的 Dsymutil 警告。我通过更改构建设置中的“调试信息格式”来消除这些警告

在您的 xcode 项目 > Build Setting > Under Build Option > Change Debug Information Format to 'DWARF'

我不确定它是否真的隐藏了警告或完全摆脱了警告。

于 2014-10-02T13:13:32.293 回答