我正在将第三方静态库导入到我的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试图在构建框架的开发人员的本地路径上查找框架中包含的代码的对象文件。
静态库中的哪些生成设置会导致这样的问题?
我在堆栈溢出和其他平台上找到了几个响应:What do these Dsymutil Warnings mean in XCode 4.5?,但它们都没有真正解释根本的问题。
我对Mach-O/DSYM非常陌生,所以如果您需要任何其他信息来理解问题所在,请告诉我。
发布于 2014-08-22 19:17:51
作为您链接到的帖子中的一个答案,这是您无法控制的库中的一个问题。链接器可以看到库中无法打开的对象。在不同的框架中,我也遇到了同样的问题,我正在等待供应商给我发送一个更新的版本,这个版本是用最近构建的llvm编译的。我建议你也这样做,并联系图书馆的作者。
编辑8/26:刚刚得到了图书馆作者的确认。这些警告发生的原因是项目中发布版本的符号剥离设置不正确。
发布于 2014-10-02 13:13:32
我也面临同样的Dsymutil警告。我通过在构建设置中更改“调试信息格式”来消除这些警告
在xcode项目> Build设置> Build选项下>将调试信息格式更改为‘侏儒’。
我不确定它是否真的隐藏了警告,或者完全消除了。
https://stackoverflow.com/questions/25270192
复制相似问题