このページは前リリースの情報です。該当の英語のページはこのリリースで削除されています。

Microsoft Windows プラットフォームでのデバッグ

この例では、Microsoft® Visual Studio® 2012 で matlabroot/extern/examples/mex/ フォルダー内にある yprime.c をデバッグする方法を説明します。異なるバージョンを使用している場合、対応する Microsoft ドキュメンテーションを参照してください。

  1. Visual Studio が選択した C コンパイラであることを確認します。

    cc = mex.getCompilerConfigurations('C','Selected');
    cc.Name
    ans =
    
    Microsoft Visual C++ 2012 (C)
    
  2. -g オプションを指定してソース MEX ファイルをコンパイルします。これで、デバッグ シンボルがインクルードされたファイルがビルドされます。以下に例を示します。

    copyfile(fullfile(matlabroot,'extern','examples','mex','yprime.c'),'.','f')
    mex -g yprime.c

  3. Visual Studio を起動します。MATLAB® セッションは終了しないでください。

  4. Visual Studio の [Tools] メニューで [Attach to Process] を選択します。

  5. [Attach to Process] ダイアログ ボックスで MATLAB プロセスを選択し、[Attach] をクリックします。

    Visual Studio はデータを読み込んだ後、空白のコード ペインを表示します。

  6. [File][Open][File] を選択してソース ファイル yprime.c を開きます。c:\work フォルダー内の yprime.c を見つけます。

  7. 目的のコード行を右クリックし、コンテキスト メニューから [Breakpoint][Insert Breakpoint] を選択してブレークポイントを設定します。ゲートウェイ ルーチンの先頭で停止するように、ブレークポイントを mexFunction に設定しておくと便利です。

    実行可能ファイルをまだ実行していない場合、コード行の隣にブレークポイントとともに表示される [!] アイコンは無視してください。

    いずれかのブレークポイントに達した時点で、デバッガーのすべてのコマンドを使用した変数の確認、メモリの表示、レジスタの検査が可能です。

  8. MATLAB を開いて次を入力します。

    yprime(1,1:4)

    Visual Studio デバッガーが yprime.c を最初のブレークポイントで開きます。

  9. [Debug][Continue] を選択すると、MATLAB は以下を表示します。

    ans =
    
        2.0000    8.9685    4.0000   -1.0947
    

    Visual Studio 環境でのデバッグ方法の詳細については、Microsoft のドキュメンテーションを参照してください。

デバッグに関するメモ

-g オプションを指定してビルドされたバイナリ MEX ファイルは、MATLAB では配布されないファイルに依存しているため、他のコンピューターでは実行されません。MEX ファイルに関する問題の分離の詳細については、C MEX ファイル アプリケーションにあるトラブルシューティングを参照してください。

MEX ファイルをデバッグするときは、例外の処理で "アクセス違反" を有効にしないでください。この例外での停止を回避するには [Win32 Exceptions] のチェック ボックスをオフにします。Visual Studio 2015 の場合は、[Debug][Windows][Exception Settings] のチェック ボックスを探します。別のバージョンの Visual Studio を使用している場合、対応する Microsoft ドキュメンテーションを参照してください。

関連するトピック

外部の Web サイト