dwarf_transform_to_disk_form —
    transform DWARF information into byte streams
DWARF Access Library (libdwarf,
  -ldwarf)
#include
    <libdwarf.h>
Dwarf_Signed
  
  dwarf_transform_to_disk_form(Dwarf_P_Debug
    dbg, Dwarf_Error *err);
Function
    dwarf_transform_to_disk_form()
    transforms the DWARF information gathered by the producer into byte streams
    for the application to write out as ELF sections. If the flag
    DW_DLC_SYMBOLIC_RELOCATIONS is set on the producer,
    the function will also generate the associated relocation arrays.
Argument dbg should reference a DWARF
    producer instance allocated using
    dwarf_producer_init(3)
    or
    dwarf_producer_init_b(3).
If argument err is not NULL, it will be used
    to store error information in case of an error.
After a call to this function, the application can call the
    function
    dwarf_get_section_bytes(3)
    to retrieve the byte streams for each ELF section. If the flag
    DW_DLC_SYMBOLIC_RELOCATIONS was set on the
    descriptor, the application can also call the function
    dwarf_get_relocation_info(3)
    to retrieve the generated relocation arrays.
On success, function
    dwarf_transform_to_disk_form() returns the total
    number of ELF sections generated. In case of an error, function
    dwarf_transform_to_disk_form() returns
    DW_DLV_NOCOUNT and sets the argument
    err.
Function dwarf_transform_to_disk_form()
    can fail with:
  - [
DW_DLE_ARGUMENT] 
  - Argument dbg was NULL.
 
  - [
DW_DLE_MEMORY] 
  - An out of memory condition was encountered during execution.