CLion 2026.2 Help

Valgrind の memcheck

Valgrind Memcheck(英語) は、リーク、無効なメモリアクセス、不正なメモリリリース、未定義の値参照などのメモリ使用の問題を検出するツールです。

CLion の Valgrind 統合は、Linux、macOS、 WSL を使用した Windows で動作します(WSL 上の Valgrind を参照)。

Valgrind を設定する

  1. システムに Valgrind を インストール(英語)します。

  2. CLion で 設定 | ビルド、実行、デプロイ | 動的解析ツール | Valgrind に移動します。

  3. CLion は、システムの PATH で設定された Valgrind バイナリを検出しようとします。

    標準以外の Valgrind の場所の場合は、 Valgrind 実行可能ファイル フィールドに手動でパスを指定します。

  4. 分析オプション(英語)を指定するか、デフォルトのものを使用します。

  5. オプションで、 抑制ファイル(英語)のリストを構成します。

    例: 抑制ファイルを使用して、特定のライブラリの Valgrind チェックを無効にすることができます。

Valgrind の設定

WSL で Valgrind を構成する

  1. 設定 | ビルド、実行、デプロイ | 動的解析ツール | Valgrind で、Valgrind バイナリの実際の Windows の場所ではなく、Valgrind への「サブシステム」パス (デフォルトでは /usr/bin/valgrind ) を指定します。

  2. WSL ツールチェーンに接続された CMake プロファイルを有効化してください。

    これには、次のいずれかを実行します。

    • WSL ツールチェーンをデフォルトとして設定します。 この設定により、自動的にデフォルトの CMake プロファイルに接続します:

      cl_wsl_deftoolchain.png
    • 別個の CMake プロファイルを作成し、WSL ツールチェーンに接続して、構成スイッチャーでこのプロファイルを選択してください:

      WSL ツールチェーンの CMake プロファイル

ターゲットの実行方法

Valgrind Memcheck を使用してターゲット(アプリケーションまたはテスト)を実行するには、次のいずれかを実行します。

  • ガターアイコンをクリックし、メニューから Valgrind Memcheck で 'ターゲット名' を実行 オプションを選択します:

    cl_runValgrindGutter.png
  • 目的の 実行 / デバッグ構成を選択し、メインメニューから 実行 | Valgrind Memcheck で 'ターゲット名' を実行 を呼び出すか、専用ツールバーアイコンをクリックしてください:

    メインツールバーから Valgrind を実行する

Valgrind が以前に構成されていない場合、CLion は構成ダイアログを開きます。

検索結果

  • 起動が完了したら、 実行 ツールウィンドウの Valgrind​ タブを開きます。

    Valgrind Memcheck の出力
  • 左側のペインには、ValgrindMemcheck によって検出されたすべての問題のリストが表示されます。 各エントリには、命令ポインタ、問題のある関数名、(可能であれば)問題が存在するソースファイルが含まれます。

  • 右側のペインには、完全なスタックフレームの説明と対応するコードプレビュー(可能な場合)があります。

結果のエクスポートとインポート

  • 結果をエクスポートするには、 Valgrind​ タブの左ペインにある エクスポート cl_valgrindexport_b.png アイコンをクリックし、出力先の XML ファイルを指定します:

    Valgrind の結果をエクスポートする

    メモ エクスポートボタンは実行中は使用できません。

  • 結果をインポートするには、メインメニューから 実行 | Valgrind XML 結果をインポートする を選択し、インポート元の XML ファイルを選択します。

2026 年 7 月 15 日