CLion 2026.2 Help

デバッガーオプション

CLion では、以下のデバッガーを使用して C および C++ 実行可能ファイルをデバッグできます:

バンドルされているデバッガーの現在のバージョンは次のとおりです。

バンドルされたデバッガー

バージョン

サポートされるプラットフォーム

LLDB

21.1.7

macOS, Linux

GDB

17.1

Windows、Linux

MSVC ツールチェーン用の LLDB

9.0.0*

Windows

デバッガー間の切り替え

  1. メインツールバーのデバッグプロファイルスイッチャーからデバッグプロファイルを選択します。 スイッチャーでは現在のプロファイルが デバッグ|<profile> として表示されます。

    メインツールバーのデバッグプロファイルスイッチャー
  2. プロファイルを追加または編集するには、 設定 | ビルド、実行、デプロイ | デバッガー | デバッグプロファイル に移動します。 詳細については、 デバッグプロファイルを参照してください。

デバッガーのデータビュー

設定 | ビルド、実行、デプロイ | デバッガー | データビュー | C/C++ ダイアログでは、C/C++ データ表現をカスタマイズできます。

C/C++ デバッガーデータビューの設定

ここでは、標準ライブラリ型のレンダリング、モジュール名、関数パラメーター型と関数テンプレート引数、その他のオプションを制御できます。 または、 デバッグツールウィンドウ 、フレームビュー、変数ビューでコンテキストメニューを使用します。

変数はコンテキストオプションを表示する

STL コンテナーのレンダリング

GNU ライブラリレンダラを有効にする チェックボックスを設定すると、 gcc コンパイラーの使用時に GDB による STL コンテナーのレンダリングに影響します。 clang を GDB と組み合わせて使用する場合、このオプションは libstdc ++ に対してのみ機能します (詳細については、 次の章を参照してください)。

現在、このオプションは LLDB には適用されません。 LLDB(バージョン 9.0 以降)が以下の LLDB STL フォーマッタ で libc++ および libstdcxx を処理する方法を確認してください。

LLDB STL フォーマッタ

以下のリストは、LLDB バージョン 9.0 で正確です。

タイプ

libcxx

libstdc ++

文字列

check_retina.png

check_retina.png

配列

check_retina.png

check_retina.png

ベクター

check_retina.png

minus_retina.png

デック

check_retina.png

minus_retina.png

リスト

check_retina.png

minus_retina.png

フォワードリスト

check_retina.png

minus_retina.png

設定​タイトル​

check_retina.png

minus_retina.png

マップ

check_retina.png

minus_retina.png

マルチセット

check_retina.png

minus_retina.png

マルチマップ

check_retina.png

minus_retina.png

unordered_set

check_retina.png

minus_retina.png

unordered_map

check_retina.png

minus_retina.png

unordered_multiset

check_retina.png

minus_retina.png

unordered_multimap

check_retina.png

minus_retina.png

スタック

check_retina.png

minus_retina.png

キュー

check_retina.png

minus_retina.png

priority_queue

check_retina.png

minus_retina.png

タイプ

libcxx

libstdc ++

文字列

-fstandalone-debug でコンパイルした場合は check_retina.png

check_retina.png

配列

check_retina.png

check_retina.png

ベクター

check_retina.png

check_retina.png

デック

check_retina.png

check_retina.png

リスト

check_retina.png

check_retina.png

フォワードリスト

check_retina.png

minus_retina.png

設定​タイトル​

check_retina.png

check_retina.png

マップ

check_retina.png

check_retina.png

マルチセット

check_retina.png

check_retina.png

マルチマップ

check_retina.png

check_retina.png

unordered_set

check_retina.png

minus_retina.png

unordered_map

check_retina.png

minus_retina.png

unordered_multiset

check_retina.png

minus_retina.png

unordered_multimap

check_retina.png

minus_retina.png

スタック

check_retina.png

check_retina.png

キュー

check_retina.png

check_retina.png

priority_queue

check_retina.png

check_retina.png

macOS 上の GDB の STL レンダラー

デバッグバックエンドとしての GDB と Clang (CMake のデフォルトコンパイラー)の組み合わせは、macOS で STL コンテナーのコンテンツを表示する際の制限を意味します。 回避策として、次の手順を試してください。

  1. libc++ の代わりに libstdc ++ ライブラリを使用してください。 libstdc ++ をプロジェクトに含めるには、 CMakeLists.txt に次のコマンドを追加します:

    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libstdc++")

    または、 設定 | ビルド、実行、デプロイ | CMake に移動し、 CMake のオプション フィールドでライブラリを指定します。

    -DCMAKE_CXX_FLAGS="-stdlib=libstdc++"
  2. dwarf3 デバッグ情報形式を使用することもお勧めします。 このために、次のコマンドを CMakeLists.txt に追加します。

    set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -gdwarf-3") set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -gdwarf-3")

カスタム .gdbinit/ .lldbinit ファイル

プロジェクトでデバッグ用にさらに多くの構成オプションが必要な場合は、カスタム初期化ファイル(GDB の場合は .gdbinit(英語) 、LLDB の場合は .lldbinit(英語) )を作成し、プロジェクトルートに配置できます。 このファイルは、他のプロジェクトファイルと一緒に VCS を介して共有できます。

通常、GDB/LLDB は、起動時に特定の順序で複数の初期化ファイルをロードします。 最初に、デバッガーはユーザーのホームディレクトリで初期化ファイルを探し、次に現在の作業ディレクトリ(プロジェクトルート)でファイルを探します。

デフォルトでは、セキュリティ上の理由から、プロジェクト固有の init ファイルからのコマンドは実行されません。 これを可能にするには、以下に説明するように、ホームディレクトリの init ファイルを変更します。

プロジェクト固有の .gdbinit/ .lldbinit の読み取りを有効にする

~/.gdbinit ファイルに権限を設定します。

GDB 11.1 以降では、代わりに $HOME/.config/gdb/gdbinit または $HOME/Library/Preferences/gdb/gdbinit を使用できます。

WSL を使用する場合は、WSL のホームディレクトリ /home/[user]/.gdbinit にある .gdbinit ファイルを編集します。

  • すべてのプロジェクト

    set auto-load local-gdbinit on add-auto-load-safe-path /
  • 特定のプロジェクト用

    set auto-load local-gdbinit on add-auto-load-safe-path [full path to the project root]/.gdbinit

ホーム ~/.lldbinit ファイルに権限を設定します。

settings set target.load-cwd-lldbinit true

    GDB タイムアウト値の調整

    CLion レジストリで対応するプロパティを設定することにより、GDB タイムアウト値を制御できます。

    1. Ctrl+Shift+A を押すか、メインメニューから ヘルプ | アクションの検索 を選択します。 開いたポップアップで、 レジストリ の入力を開始し、対応する項目を選択して Enter を押します。

      検索アクションでのレジストリの検索
    2. 開いたダイアログで、 cidr.debugger.timeout と入力し始めます。 ハイライトされた文字列の 値 フィールドをクリックし、タイムアウト値をミリ秒で入力します。

      GDB タイムアウトのレジストリキー

    Windows 上での外部 GDB コンソールの設定

    8.0 より前のバージョンの GDB を使用する Windows では、アプリケーションの入出力に別のコンソールが使用されます。 新しい GDB バージョンの場合、出力はデフォルトで CLion コンソールにリダイレクトされます。 ただし、外部出力ウィンドウを開くことに切り替えることができます。

    1. Ctrl+Shift+A を押すか、メインメニューから ヘルプ | アクションの検索 を選択します。 開いたポップアップで、 レジストリ の入力を開始し、対応する項目を選択して Enter を押します。

      検索アクションでのレジストリの検索
    2. 開いたダイアログで、 cidr.debugger.gdb.workaround.windows.forceExternalConsole と入力し始めます。 ハイライトされた文字列の 値 フィールドをクリックします。

      Windows で外部 GDB コンソールを有効にするレジストリキー

    コンパイル時の評価

    Constexpr デバッガー は、コンパイラーの視点で本当に何が起きているのかを把握できます。評価をステップ実行中に値を確認し、どの if constexpr ブランチが発動したかを確認できます。 このツールはコンパイラーが何をしているかを正確に理解し、問題をより早く解決するのに役立ちます。

    2026 年 7 月 15 日