C++ プロジェクトのデバッグ情報をリモートの場所に転送してテストする方法を作成しようとしています。現在の開発サイクルでは、コードに小さな変更を加えると、バイナリ全体 (サイズは 100 MB で、ほとんどがデバッグ情報) を転送する必要があります。
現在、これに対処するための私のアプローチは、-gsplit-dwarf を使用してオブジェクト ファイルからデバッグ情報を分割し (デバッグ情報なしのサイズは私の接続で管理可能です)、現在実行中のビルドのコピーに対してデバッグ ファイルを比較することです。リモートボックス。
目的は、プロジェクトのデバッグ ファイル用の一連のパッチを用意して、新しいコードをリモート ロケーションでデバッグできるようにすることです。リモートの場所とローカル マシン間の接続は低速であるため、パッチのサイズを最小限に抑えることが最も重要ですが、ツールの実行時間とのバランスを取る必要もあります。可能性のある解決策として bsdiff と xdelta を調べたところ、xdetla は高速ですが大きすぎ、bsdiff はサイズの点で完璧ですが、実行時間とメモリ要件が希望よりも少し高いという難問に遭遇しました。
不足しているツールやアプローチはありますか、それとも間違った方法で進んでいますか? おそらくbsdiffとxdeltaに代わるものはありますか? gbdserver のようなツールは、実際のデバッグに関するいくつかの要件のために、この状況では機能しないことを私は知っています。bsdiff を変更すると、パフォーマンスが向上しますか? 実際、私が使用しているアプローチが適切である場合、ビルドのコピーをリモート マシンに保持して比較するための良い方法は何でしょうか。