.dSYM文件的生成

符号表文件.dSYM实际上是从Mach-O文件中抽取调试信息而得到的文件目录,实际用于保存调试信息的问价是DWARF,其出身可以从苹果员工的文章《Apple’s “Lazy” DWARF Scheme》了解一二。


1、Xcode自动生成


Xcode会在编译工程或者归档时自动为我们生成.dSYM文件,当然我们也可以通过更改Xcode的若干项Build Settings来阻止它那么干。


2、手动生成


另一种方式是通过命令行从Mach-O文件中手工提取,比如:

Xcode 生成项目app路径为


 /Users/kangxg/Library/Developer/Xcode/DerivedData/ettNextGen-hcoabpnaanaokcelcdxxabpdvbng/Build/Products/Debug-iphoneos/ettNextGen.app/ettNextGen

 

提取命令


  
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/dsymutil  /Users/kangxg/Library/Developer/Xcode/DerivedData/ettNextGen-hcoabpnaanaokcelcdxxabpdvbng/Build/Products/Debug-iphoneos/ettNextGen.app/ettNextGen  -o ettNextGen.dSY

 为了方便 可以包app包 复制放到需要的位置 提取命令:


/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/dsymutil /Users/kangxg/Desktop/未命名文件夹/ettNextGen.app/ettNextGen -o ettNextGen.dSYM
    这时候在目录中就可以看到 生成的 dSYM