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

コマンド参照

fix コマンドの構文は次のとおりです。


fix [options] [file1, file2,...]

-a

変更されたすべてのファイルを再コンパイルします。 

-f

ソースが変更されていなくても、そのファイルを修正します。 

-c

コンパイル行を出力します (dbx 用に内部的に追加されたオプションも含まれます)。実際にはコンパイルは行われません。

-g

再コンパイルのためのコマンド行で、-O フラグの代わりに -g フラグを使用します。

-n

何の fix を行うかを表示します。再コンパイルを実行しないで、再コンパイルの対象になるソースファイルを調べたい場合は、このオプションを使用してください。

file1, file2,...

修正 (fix) したい変更済みソースファイルを指定します。

-a 以外のオプションを指定し、ファイル名を指定しないで fix を呼び出すと、現在のソースファイルだけが再コンパイルの対象になります。


注 -

ソースファイルだけでなくヘッダーファイル (.h) も変更しなければならないことがあります。変更したヘッダーファイルが、それをインクルードするプログラム内のすべてのソースファイルからアクセスされるようにするには、そのヘッダーファイルをインクルードするすべてのソースファイルを fix コマンドに引数として渡す必要があります。ソースファイルを指定しないと、主なソースファイルだけが再コンパイルされ、変更後のヘッダーファイルはそのファイルにしかインクルードされません。プログラム内の他のソースファイルには、変更前のヘッダーファイルがインクルードされたままになります。



注 -

C++ テンプレート定義を直接修正することはできません。代わりにテンプレートインスタンスを使用してファイルを修正してください。-f オプションを使用すると、テンプレート定義ファイルが変更されなかった場合に、日付検査を上書きすることができます。dbx は、テンプレート定義 .o ファイルをデフォルトのレポジトリディレクトリ SunWS_cache で検索します。-ptr コンパイラスイッチは、dbxfix コマンドではサポートされていません。


fix を呼び出すと、dbx はコンパイル時のソースファイルの現在の作業ディレクトリを探し、再コンパイルのためのコマンド行を実行します。コンパイル後にファイルシステム構造が変更されていると、dbx が正しいディレクトリを見つけられないことがあります。この問題を避けるためには、pathmap コマンドを使用します。このコマンドは、あるパス名を別のパス名にマッピングします。マッピングは、ソースパスとオブジェクトファイルパスに適用されます。