1

-GD Delphi コンパイラ スイッチを使用すると、詳細なデバッグ マップを出力できます。このようなファイルには、たとえば、アプリケーションにコンパイルされたファイルに関する情報が含まれています。

Line numbers for UnitName(UnitName.pas) segment .text

    49 0001:001D27EC    50 0001:001D27F3    51 0001:001D27FC    52 0001:001D280A
    53 0001:001D2813    55 0001:001D2827    57 0001:001D2837    60 0001:001D283C
    ...

デバッグ マップを使用して、アプリケーションの依存関係を分析したいと考えています。現在、同じ名前のユニットが異なるフォルダーにあるという問題に行き詰まりました。

SomeSourceFolder/NotUniqueUnitName.pas
SomeThirdPartyFolder/NotUniqueUnitName.pas

デバッグ マップで言及されているファイルを特定するには、そのファイルへの絶対パスまたは相対パスが必要です。

リンカにソース ファイルへのパスを強制的に出力させる方法はありますか? または、この情報を取得するための他の方法を提案できますか?

4

1 に答える 1

0

リンカにソース ファイルへのパスを強制的に出力させる方法はありますか?

いいえ。

現在、同じ名前のユニットが異なるフォルダーにあるという問題に行き詰まりました。

私はこれが事実であるとは信じていません。私がよほど間違っていない限り、Delphi は同じ名前を持つ 2 つの異なるユニットをリンクしません。

しかし、それは問題ではないかもしれません。おそらく問題は、どのファイルがリンクされているかわからないことです。検索パスに依存するのではなく、必要なすべてのファイルをプロジェクトに含めることをお勧めします。そうすれば、どのファイルが使用されているかを確認できます。

于 2015-10-09T10:14:23.637 に答える