[Dwarf-Discuss] dsymutil: "could not find referenced DIE" followed by a segmentation fault and other newbie questions
Adrian Prantl
aprantl@apple.com
Mon Dec 10 17:55:56 GMT 2018
> On Dec 8, 2018, at 6:24 AM, Gil Moses via Dwarf-Discuss <dwarf-discuss at lists.dwarfstd.org> wrote:
>
> Hi,
>
> Building with Xcode 7, once in a while I get the following warnings from the dsymutil tool (a few dozens):
> "could not find referenced DIE"
> Followed be a segmentation fault.
>
> Adding the verbosity flag, I got detailed information about the DIEs that had the error, e.g.:
> ===========
> while processing /p4client/ProAudio/dev_main/ProAudio/XcodeBuildProducts/Debug/libWaveShell-Common.a(GraphicStream_Utils.o):
> warning: could not find referenced DIE
> in DIE:
>
> 0x0001415e: DW_TAG_imported_declaration [99]
> DW_AT_decl_file [DW_FORM_data1] ("/Applications/Xcode7.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/usr/include/sys/_types/_time_t.h")
> DW_AT_decl_line [DW_FORM_data2] (20047)
> DW_AT_import [DW_FORM_ref4] (cu + 0x4c4f5254 => {0x4c4f5254})
> ============
>
> How do I go about understanding the error, what caused it and how to solve it?
> BTW, the lib size being built is around 350MB. Could there be a size issue causing this seg fault?
If you have questions about Apple-specific versions of the various LLVM tools, the best way to get in contact is to file a bugreport on https://bugreport.apple.com/.
The version of dsymutil that you are using (700) is quite old. Is using a newer version from a more recent Xcode an option for you?
> While I'm here, where could I download the full source code of dsymutil? All I found was links to separate files (https://opensource.apple.com/source/clang/clang-700.0.72/src/tools/dsymutil/)
Dsymutil is part of the LLVM project, if you want to build it from source, you'll need to download LLVM and compile the "dsymutil" target. The https://opensource.apple.com/source/clang/clang-700.0.72/src directory you mentioned should contains the entire LLVM project. Instructions for building it can be found here: http://llvm.org/docs/GettingStarted.html.
That said, I would recommend trying a more recent version of dsymutil first.
-- adrian
More information about the Dwarf-discuss
mailing list