Search code examples
xcodemacosllvmllvm-gcc

problem with link-time optimization in Xcode


Should I turn on "Generate Debug Symbols" in Xcode for release configuration? When it and "Link Time Optimization" are turned on Xcode show warning:

GenerateDSYMFile build/Release/cocoa_tutorial5.app.dSYM build/Release/cocoa_tutorial5.app/Contents/MacOS/cocoa_tutorial5 cd /Users/ariel/Documents/spacesimulator.net/cocoa_tutorial5 /Developer/usr/bin/dsymutil /Users/ariel/Documents/spacesimulator.net/cocoa_tutorial5/build/Release/cocoa_tutorial5.app/Contents/MacOS/cocoa_tutorial5 -o /Users/ariel/Documents/spacesimulator.net/cocoa_tutorial5/build/Release/cocoa_tutorial5.app.dSYM

warning: no debug symbols in executable (-arch x86_64)
warning: no debug symbols in executable (-arch i386)
warning: no debug symbols in executable (-arch ppc7400)


Solution

  • Link time optimization and debug information do not currently work together (as of Xcode 3.2, the debug symbols are stripped before they even reach the final executable) in LLVM.

    UPDATED

    Link time optimization and debug information (DWARF or DWARF with dSYM files) work together in Xcode 5 or later.