アプリケーションをリモートでデバッグするために CDT を使用しています。アプリケーションはソース フラグメントを構築し、それをメモリに JIT します。デバッグのために、インメモリ ELF/DWARF イメージを作成して GDB JIT インターフェイスに登録し、DWARF に対応するソース ファイルをローカル (ターゲット) ファイルシステムに書き込みます。
問題は、デバッガのフロントエンドがホスト ファイリング システムでソース ファイルを見つけることを期待していることです。すべての JIT イベントの後でソース ファイルをターゲットからホストに手動でコピーすると、デバッガーはソースをステップ実行できますが、これは非現実的です。JITにファイルをホストにアップロードさせるには、JITがデバッグされている(およびどこから)かを認識する必要があります。必要に応じて、ターゲット ファイル システムからソース ファイルを取得するために、gdbserver (CDT) を取得する方法はありますか?
GDB JIT インターフェースに渡される ELF/DWARF イメージを作成するので、代替パスを使用してソース ファイルの場所を記述できます。