dbx コマンドによるデバッグ

ケース 2

RTC を接続されたプロセスで実行する場合は、ケース 2a を参照してください。それ以外の場合、唯一の対策は、余分なパッチスペースを持つ共有ライブラリの再作成です。

次のようなメッセージが表示されたら、以下の手順に従ってください。


実行時検査を有効にしています... dbx: warning: rtc: cannot find patch space within 8Mb (need 563332 bytes for ./sh1.so)
dbx: patch area too far (8Mb limitation); Access checking disabled
         (See `help rtc8M', case 2)


rtc_patch_area -o patch.o -size 563332

-size フラグは任意指定です。デフォルト値は 8000000 です。

  1. エラーメッセージからのサイズ要求を満たしたら、次の手順に進みます。それ以外の場合は、手順 1 を繰り返して、さらに多くの .o ファイルを必要に応じて作成します。

  2. sh1.so を再リンクして、patch.o ファイルをリンク行に追加します。

  3. RTC を新しいバイナリで再試行します。dbx が、別の共有ライブラリに対してパッチスペースを要求する場合は、そのライブラリについて、手順 1 〜 手順 2 を繰り返します。