dsymutil — アーカイブされたDWARFデバッグシンボルファイルを操作する¶
概要¶
説明¶
dsymutil は、実行ファイル実行ファイルのオブジェクトファイルに見つかったDWARFデバッグ情報を、そのシンボルテーブルに含まれるデバッグシンボル情報を使用してリンクします。デフォルトでは、リンクされたデバッグ情報は、実行ファイルと同じ名前の.dSYM
バンドルに配置されます。
オプション¶
- --accelerator=<アクセラレータタイプ>¶
目的のアクセラレータテーブルのタイプを指定します。有効なオプションは「Apple」、「Dwarf」、「Default」、「None」です。
- --arch <arch>¶
指定されたCPUアーキテクチャタイプのみに対してDWARFデバッグ情報をリンクします。アーキテクチャは名前で指定できます。このオプションを使用する場合、いずれかのアーキテクチャを適切にリンクできない場合はエラーが返されます。このオプションは、目的のアーキテクチャごとに複数回指定できます。デフォルトではすべてのCPUアーキテクチャがリンクされ、適切にリンクできないアーキテクチャがあると、dsymutilはエラーを返します。
- --build-variant-suffix <suffix=buildvariant>¶
実行ファイルの構築に使用されたビルドバリアントサフィックスを指定します。製品のバイナリには、それぞれわずかに異なる方法で構築された複数のバリアントが存在する可能性があります。最も一般的なビルドバリアントは「debug」と「profile」です。DYLD_IMAGE_SUFFIX環境変数を設定すると、dyldは実行時に指定されたバリアントをロードします。
- --dump-debug-map¶
実行ファイルのデバッグマップ(デバッグ情報を含むオブジェクトファイルのリスト)をYAML形式でダンプして終了します。DWARFリンクは実行されません。
- -D <path>¶
dSYMファイルを含むディレクトリを指定します。これはマージ可能なライブラリで使用され、dsymutilはそれらのライブラリに存在するシンボルのデバッグ情報を含むdSYMファイルを探す場所を認識します。
- --fat64¶
ユニバーサルバイナリを出力する際に64ビットヘッダーを使用します。
- --flat, -f¶
フラットなdSYMファイルを作成します。
.dwarf
拡張子が実行ファイル名に追加されます(-o
オプションを使用して出力ファイルを指定しない場合)。
- --gen-reproducer¶
入力オブジェクトファイルからなる再現可能ファイルを作成します。–reproducer=GenerateOnExit のエイリアスです。
- --help, -h¶
このヘルプ出力を表示します。
- --keep-function-for-static¶
静的変数が、それ以外の場合は省略されていたとしても、それを含む関数を保持するようにします。
- --minimize, -z¶
dSYMファイルの作成時に使用すると、.debug_inlines、.debug_pubnames、.debug_pubtypesセクションの出力は抑制されます。これは、dsymutilには現在、.apple_namesや.apple_typesといったより優れた同等のものがあるためです。
--update
オプションと併用すると、冗長なアクセラレータテーブルが削除されます。
- --no-odr¶
C++タイプのユニーク化にODR(One Definition Rule)を使用しません。
- --no-output¶
メモリ内でリンクを実行しますが、結果のファイルは出力しません。
- --no-swiftmodule-timestamp¶
swiftmoduleファイルのタイムスタンプをチェックしません。
- --num-threads <threads>, -j <threads>¶
複数のアーキテクチャをリンクする際に使用する同時スレッドの最大数(
n
)を指定します。
- --object-prefix-map <prefix=remapped>¶
処理前にオブジェクトファイルパス(ソースパスは除く)をリマップします。
-fdebug-prefix-map
を使用してモジュールキャッシュの場所がリマップされたClangオブジェクトの場合に使用します。dsymutilがClangモジュールキャッシュを見つけるのに役立ちます。
- --oso-prepend-path <path>¶
すべてのデバッグシンボルオブジェクトファイルパスにプレフィックスとして付ける
path
を指定します。
- --out <filename>, -o <filename>¶
dSYMバンドルを配置する代替
path
を指定します。デフォルトのdSYMバンドルパスは、実行ファイル名に.dSYM
を追加することで作成されます。
- -q, --quiet¶
静かモードを有効にし、出力を制限します。
- --remarks-drop-without-debug¶
有効なデバッグ場所のない注釈を削除します。このフラグがない場合、すべての注釈が保持されます。
- --remarks-output-format <format>¶
リンクされた注釈をシリアル化する際に使用する形式を指定します。
- --remarks-prepend-path <path>¶
外部注釈ファイルのパスにプレフィックスとして付けるディレクトリを指定します。
- --reproducer <mode>¶
再現可能ファイルの生成モードを指定します。有効なオプションは「GenerateOnExit」、「GenerateOnCrash」、「Use」、「Off」です。
- --statistics¶
各オブジェクトファイルがリンクされたデバッグ情報にどの程度寄与しているかの統計情報を表示します。オブジェクトファイル名、オブジェクトファイル内のデバッグ情報のサイズ(バイト単位)、およびリンクされたdSYMに寄与したサイズ(バイト単位)を一覧表示する表を出力します。この表は出力サイズでソートされ、寄与が最も大きいオブジェクトファイルが最初に表示されます。
- -s, --symtab¶
実行ファイルまたはオブジェクトファイルのシンボルテーブルをダンプして終了します。
- -S¶
バイナリdSYMコンパニオンファイルではなく、テキスト形式のアセンブリを出力します。
- --toolchain <toolchain>¶
ツールチェーンをdSYMバンドルのプロパティリストに埋め込みます。
- -u, --update¶
既存のdSYMファイルを更新して、最新のアクセラレータテーブルおよびその他のDWARF最適化を含めます。このオプションは、'`.apple_names`' と '`.apple_types`' のハッシュ化されたアクセラレータテーブルを再構築します。
- --use-reproducer <path>¶
指定されたレプロデューサパスのオブジェクトファイルを使用します。`--reproducer=Use` のエイリアスです。
- --verbose¶
リンク時に詳細情報を表示します。
- --verify¶
リンクされたDWARFデバッグ情報に対してDWARF検証を実行します。
- -v, --version¶
ツールのバージョンを表示します。
- -y¶
実行ファイルを実行ファイルではなくYAMLデバッグマップとして扱います。
終了ステータス¶
dsymutil は、DWARFデバッグ情報が正常にリンクされた場合、0を返します。それ以外の場合は、1を返します。