dbx コマンドによるデバッグ ホーム目次前ページへ次ページへ索引


はじめに

dbx は、対話型でソースレベルの、コマンド行ベースのデバッグツールです。このマニュアルは、Fortran、C、または C++ による開発経験を持つプログラマで、SolarisTM オペレーティング環境と UNIX® コマンドについてある程度の知識があり、dbx コマンドを使用してアプリケーションのデバッグを行いたい方を対象にしています。このマニュアルでは、Sun WorkShop「デバッグ」ウィンドウを使用して実行できる、同様のデバッグ操作についても参照することができます。

マルチプラットフォーム対応

この Sun WorkShop リリースは、Solaris 2.6、7、および 8 のオペレーティング環境 (SPARCTM プラットフォームおよび Intel プラットフォーム) をサポートしています。


注 - Intel アーキテクチャとは、Pentium、Pentium Pro、Pentium II プロセッサおよび、これらと互換性のある AMD および Cyrix 製のマイクロプロセッサチップを含む、Intel 8086 マイクロプロセッサチップ群を意味しています。このマニュアルでは、これらすべてのプラットフォームアーキテクチャを総称して Intel アーキテクチャと呼んでいます。

Sun WorkShop 開発ツールへのアクセス方法

Sun WorkShop 製品コンポーネントとマニュアルページは標準ディレクトリ/usr/bin および /usr/share/man にはインストールされません。そのため PATH および MANPATH 環境変数を変更して Sun WorkShop コンパイラとツールにアクセスできるようにする必要があります。

PATH 環境変数を設定する必要があるかどうか判断するには以下を実行します。

1. 次のように入力して、PATH 変数の現在値を表示します。

% echo $PATH

2. 出力内容から /opt/SUNWspro/bin を含むパスの文字列を検索します。

パスがある場合は、PATH 変数は Sun WorkShop 開発ツールにアクセスできるように設定されています。パスがない場合は、この節の指示に従って、PATH 環境変数を設定してください。

MANPATH 環境変数を設定する必要があるかどうか判断するには以下を実行します。

1. 次のように入力して、workshop マニュアルページを表示します。

% man workshop

2. 出力された場合、内容を確認します。

workshop(1) マニュアルページが見つからないか、表示されたマニュアルページがインストールされたソフトウェアの現バージョンのものと異なる場合は、この節の指示に従って MANPATH 環境変数を設定してください。


注 - この節に記載されている情報は Sun WorkShop 6 製品が /opt ディレクトリにインストールされていることを想定しています。 Sun WorkShop ソフトウェアが /opt ディレクトリにインストールされていない場合は、システム管理者に連絡してください。

PATH 変数および MANPATH 変数は、C シェルを使用している場合はホームディレクトリの下の .cshrc ファイルに設定する必要があります。Bourne シェルか Korn シェルを使用している場合は、ホームディレクトリの下の .profile ファイルに設定する必要があります。

内容の紹介

このマニュアルは次の章と付録から構成されています。

第 1 章「dbx の起動」では、デバッグセッションの開始方法と停止方法、コンパイル時のオプション、およびデバッグ実行の全部または一部を保存して、それを後で再現する方法について説明します。

第 2 章「dbx のカスタマイズ」では、dbx 環境変数を調整してデバッグ環境の特定の属性をカスタマイズする方法と、初期化ファイル .dbxrc を使用してセッションを通じて変更内容と調整内容を保存する方法について説明します。

第 3 章「コードの表示」では、コードの表示、関数の表示、シンボルの検索、および変数、メンバー、型、クラスの参照について説明します。

第 4 章「プログラムの実行制御」では、dbx でプログラムを実行、接続、続行、停止、および再実行する方法と、プログラムコードのステップ実行について説明します。

第 5 章「ブレークポイントとトレースの設定」では、ブレークポイントとトレースの設定、削除、一覧方法、およびウォッチポイントの設定方法などの一般的な操作について説明します。

第 6 章「イベント管理」では、イベントの管理方法について説明します。また、デバッグ中のプログラムで特定のイベントが発生した場合に特定のアクションを実行するための、dbx の一般的な機能についても説明します。

第 7 章「呼び出しタックの使用」は、コールスタックの検証方法、およびコアファイルのデバッグ方法について説明します。

第 8 章「データの評価と表示」では、データの評価方法、式の値や変数、データ構造などの表示方法、および式への値の割り当て方法について説明します。

第 9 章「実行時検査」では、開発段階のアプリケーションにある実行時エラーを自動的に検出できる機能について説明します。

第 10 章「データの視覚化」では、Sun WorkShop でプログラムをデバッグするときに、データをグラフィック表示させる方法について説明します。

第 11 章「修正継続機能 (fix と continue)」では、dbx を終了せずにソースファイルを修正し、ファイルを再コンパイルして、プログラムの実行を続ける方法について説明します。

第 12 章「マルチスレッドアプリケーションのデバッグ」では、dbxthread コマンドを使用してスレッドに関する情報を検索する方法を説明します。

第 13 章「子プロセスのデバッグ」では、子プロセスを作成するプロセスをデバッグするのに役立ついくつかの dbx 機能について説明します。

第 14 章「シグナルの処理」では、dbx を使用してシグナルを処理する方法を説明します。

第 15 章「C++ のデバッグ」では、dbx による C++ テンプレートのサポートについて説明します。また、C++ 例外を処理するために使用可能なコマンドと、dbx がこれらの例外をどのように処理するかについて説明します。

第 16 章「dbx を使用した Fortran のデバッグ」では、Fortran で使用するいくつかの dbx 機能について説明します。

第 17 章「機械命令レベルでのデバッグ」では、イベント管理およびプロセス制御の各コマンドを機械命令レベルで使用する方法と指定アドレスのメモリーの内容を表示する方法、およびソース行を対応する機械命令とともに表示する方法について説明します。

第 18 章「dbx の Korn シェル機能」では、ksh-88 と dbx コマンド言語の間の違いについて説明します。

第 19 章「共有ライブラリのデバッグ」では、動的にリンクされた共有ライブラリを使用するプログラムに対する dbx のデバッグサポートについて説明します。

付録 A「プログラム状態の変更」は、プログラムを変更する dbx コマンド、および dbx のもとでプログラムを実行した場合の動作について説明します。

書体と記号について

このマニュアルで使用している書体と記号について説明します。

表 P-1   このマニュアルで使用している書体と記号  
書体または記号 意味
AaBbCc123 コマンド名、ファイル名、ディレクトリ名、画面上のコンピュータ出力、コーディング例。 .login ファイルを編集します。 ls -a を使用してすべてのファイルを表示します。 machine_name% You have mail.
AaBbCc123 ユーザーが入力する文字を、画面上のコンピュータ出力と区別して表わします。 machine_name% su Password:
AaBbCc123
または
ゴシック
コマンド行の可変部分。実際の名前または実際の値と置き換えてください。 rm filename と入力します。 rm ファイル名 と入力します。
『 』 参照する書名を示します。 『SPARCstorage Array ユーザーマニュアル』
「 」 参照する章、節、または、強調する語を示します。 第 6 章「データの管理」を参照してください。 この操作ができるのは、「スーパーユーザー」だけです。
\ 枠で囲まれたコード例で、テキストがページ行幅を超える場合、バックスラッシュは、継続を示します。 machinename% grep `^#define \
 XV_VERSION_STRING'
階層メニューのサブメニューを選択することを示します。 作成: 「返信」 「送信者へ」


シェルプロンプトについて

シェルプロンプトの例を以下に示します。

表 P-2   シェルプロンプト
シェル プロンプト
UNIX の C シェル machine_name%
UNIX の Bourne シェルと Korn シェル machine_name$
スーパーユーザー
(シェルの種類を問わない)
#


関連マニュアル

以下の方法で、関連マニュアルにアクセスすることができます。

表 P-3 は、Sun WorkShop 6 関連マニュアルをマニュアルコレクション別に一覧にしたものです。

表 P-3   マニュアルコレクション別 Sun WorkShop 6 関連マニュアル  
マニュアルコレクション マニュアルタイトル 内容の説明
Forte Developer 6 / Sun WorkShop 6 リリース マニュアル Sun WorkShop 6 マニュアルの概要 Sun WorkShop 6で使用可能なマニュアルとそのアクセス方法について説明しています。

Sun WorkShop の新機能
Sun WorkShop 6 の現在のリリースと以前のリリースでの新機能についての情報を記載しています。

Sun WorkShop 6 リリースノート インストールの詳細と Sun WorkShop 6 最終リリースの直前に判明した情報を記載しています。このマニュアルはコンポーネントごとの README ファイルにある情報を補足するものです。
Forte Developer 6 / Sun WorkShop 6 プログラムのパフォーマンス解析 新しい標本コレクタと標本アナラザの使い方について説明しています (上級者向けのプロファイリング事例と説明付き)。コマンド行解析ツール er_print、ループツール、ループレポートユーティリティおよび UNIX プロファイルツール prof、 gprof、tcov についての情報も含んでいます。

dbx コマンドによるデバッグ dbx コマンドを使ってプログラムをデバッグする方法について説明しています。参考情報として、同じデバッグ処理を Sun WorkShop デバッグウィンドウを使って実行する方法も記載しています。

Sun WorkShop の概要 Sun WorkShop 統合プログラミング環境の基本的なプログラム開発機能について説明しています。
Forte C 6 / Sun WorkShop 6 Compilers C C ユーザーズガイド C コンパイラオプション、サン固有の機能 (プラグマ、 lint ツール、並列化、64 ビットオペレーティングシステムへの移行および ANSI/ISO 準拠 C) について説明しています。
Forte C++ 6 / Sun WorkShop 6 Compilers C++ C++ ライブラリ・リファレンス C++ライブラリについて説明しています。C++ 標準ライブラリ、Tools.h++ クラスライブラリ、Sun WorkShop Memory Monitor、Iostream および複素数の情報も含みます。

C++ 移行ガイド コードを本バージョンの Sun WorkShop C++ コンパイラに移行する方法について説明しています。

C++ プログラミングガイド 新しい機能を使ってより効率的なプログラムを記述する方法について説明しています。 テンプレート、例外処理、実行時の型識別、キャスト演算、パフォーマンス、およびマルチスレッド対応のプログラムに関する情報も記載されています。

C++ ユーザーズガイド コマンド行オプションとコンパイラの使い方についての情報を記載しています。

Sun WorkShop Memory Monitor ユーザーズガイド C および C++ のメモリー管理で生じた問題を Sun WorkShop Memory Monitor で解決する方法について説明しています。このマニュアルはインストールした製品 (/opt/SUNWspro/docs/ja/index.html) からのみ参照可能で、docs.sun.com Web サイトで参照することはできません。
Forte for High Performance Computing 6 / Sun WorkShop 6 Compilers Fortran 77/95 Fortran ライブラリ・リファレンス Fortran コンパイラによって提供されるライブラリルーチンの詳細について説明しています。

Fortran プログラミングガイド 入出力、ライブラリ、プログラム分析、デバッグおよびパフォーマンスに関連する内容を記述しています。

Fortran ユーザーズガイド コマンド行オプションとコンパイラの使い方についての情報を記載しています。

FORTRAN 77 言語リファレンス Fortran 77 言語の包括的な参照情報を記載しています。

Fortran 95 区間演算プログラミングリファレンス Fortran 95 コンパイラによってサポートされる組み込み INTERVAL データについて説明しています。
Forte TeamWare 6 / Sun WorkShop TeamWare 6 Sun WorkShop TeamWare ユーザーズガイド Sun WorkShop TeamWare コード管理ツールの使用方法について説明しています。
Forte Developer 6/ Sun WorkShop Visual 6 Sun WorkShop Visual ユーザーズガイド C++ と JavaTM の GUI (グラフィカルユーザーインタフェース) を Sun WorkShop Visual を使用して作成する方法について説明しています。このマニュアルには、旧リリース (Sun WorkShop Visual 5.0) から変更のない機能が記載されています。

Sun WorkShop Visual の新機能 Sun WorkShop Visual 6.0 で追加または変更された機能について説明しています。
Forte / Sun Performance Library 6 Sun Performance Library Reference (英語のみ) コンピュータによる線形代数および高速フーリエ変換を実行するサブルーチンと関数の最適化ライブラリについて説明しています。

Sun Performance Library User's Guide (英語のみ)
線形代数で発生した問題の解決に使用されるサブルーチンと関数のコレクションである Sun Performance Library のサン固有の機能の使用方法について説明しています。
数値計算ガイド 数値計算ガイド 浮動小数点演算における数値の精度に関する問題について説明しています。
標準ライブラリ 2 Standard C++ Library Class Reference (英語のみ) 標準 C++ の詳細について説明しています。

標準 C++ ライブラリ・ユーザーズガイド 標準 C++ ライブラリの使用方法について説明しています。
Tools.h++ 7 Tools.h++ 7.0 ユーザーズガイド Tools.h++ クラスライブラリの詳細について説明しています。

Tools.h++ 7.0 クラスライブラリ・リファレンスマニュアル C++ クラスを使用して、プログラム効率を向上させる方法について説明しています。


表 P-4 は、docs.sun.com の Web サイトからアクセスできる Solaris 関連マニュアルの一覧です。

表 P-4   Solaris 関連マニュアル
マニュアルコレクション マニュアルタイトル 内容の説明
Solaris ソフトウェア開発
リンカーとライブラリ Solaris リンクエディタと実行時リンカーの操作およびそれらが操作するオブジェクトについて説明しています。

プログラミングユーティリティ Solaris オペレーティング環境で使用可能な特殊組み込みプログラミングツールに関する開発者向けの情報を記載しています。



サン・マイクロシステムズ株式会社
Copyright information. All rights reserved.
ホーム   |   目次   |   前ページへ   |   次ページへ   |   索引