Oracle Solaris Studio 12.2: dbx コマンドによるデバッグ

Procedureファイルを修正する

  1. 変更をソースファイルに保存します。

  2. dbx プロンプトで fix と入力します。

    修正は無制限に行うことができますが、1 つの行でいくつかの修正を行なった場合は、プログラムを作成し直すことを考えてください。fix コマンドは、メモリー内のプログラムのイメージを変更しますが、ディスク上のイメージは変更しません。また修正を行うと、メモリーのイメージは、ディスク上のイメージと同期しなくなります。

    fix コマンド は、実行可能ファイル内での変更ではなく、.o ファイルとメモリーイメージの変更だけを行います。プログラムのデバッグを終了したら、プログラムを作成し直して、変更内容を実行可能ファイルにマージする必要があります。デバッグを終了すると、プログラムを作成し直すように指示するメッセージが出されます。

    -a 以外のオプションを指定し、ファイル名引数なしで fix コマンドを実行すると、現在変更を行なったソースファイルだけが修正されます。

    fix を実行すると、コンパイル時にカレントであったファイルの現在の作業ディレクトリが検索されてからコンパイル行が実行されます。したがってコンパイル時とデバッグ時とでファイルシステム構造が変化すると正しいディレクトリが見つからなくなることがあります。 これを防ぐには、pathmap コマンドを使用します。これは 1 つのパス名から別のパス名までのマッピングを作成するコマンドです。マッピングはソースパスとオブジェクトファイルパスに適用されます。