*

Windows-QtCreatorでのデバッグ

公開日: : C++, C言語, Qt, 開発

どもです。
更新の間隔が空いてしまいました。
久しぶりの更新です。

最近、Qtを触り始めました。
まだ「触り始めた」ばかりですので、これから少しずつ理解していきます。

なお、インストールした環境/バージョンは、下記の通りです。

PC:
・CPU:i7-3770K CPU 3.50GHz
・メモリ:16.0GB
・OS:Windows7 Professional SP1(64bit)
Qt:
・Qt 5.10.1(MSVC 2015, 32bit)
・QtCreator 4.6.2

(…あれ?Qtは、32bitにしなかったっけ?)
インストールの方法については、ネット上に様々な手順が記載されているので、そちらを参考にしていただければ、と
考えています。

さて本題。
今回の記事は、Qt/QtCreatorでのデバッグについて、です。

1.問題は何?
Windows上、QtCreatorでコードを書いてデバッグしようとすると、下記のようなダイアログが表示されます。
QtDebugWarning

コレ、タイトルにあるように「警告」なので、アプリケーションの実行自体はできます。
しかし、「デバッグ」ができません。
ブレークポイントを設定しても、有効にはなりません。
今回のエントリでは、このQtCreator上で「デバッグができない」問題の解決方法を記載します。

2.問題の原因は何?
デバッグができない原因ですが、警告メッセージを見てもわかるように、「CDB」が使用するデバッガに設定されていないことです。
そこで、実際に何が設定されているかを確認します。
QtCreatorでは、デバッガは下記の場所から設定します。
QtCreatorOption
QtCreatorOption_build_execute_rect

上記の写真の通り、おそらくインストールした直後は、デバッガは「なし」に設定されていると思います。
即ち、「デバッガが設定されていない」ことになります。
そのためここに使用したい、適切なデバッガを設定すればよいことになります。

3.設定するデバッガはどれ?
では、どのデバッガを選択すればよいの?
一番最初に示したダイアログを見てみると、「CDB」がオススメ、ということが書いてあります。
しかし、「CDB」はインストールされていません。
現に、デバッガの選択のドロップダウンリストには「CDB」が表示されません。
なので、「CDB」をインストールして、使用するデバッガに設定すればよいのです。

4.CDBをインストールする
私が実施したCDBのインストール手順は、下記の通りです。

1.サイトから、「winsdksetup.exe」をダウンロードする。
WinDbg_download_rect

2.ダウンロードした実行ファイル(winsdksetup.exe)を実行する。
3.表示されたダイアログ上で、「Download the Windows Software Development Kit – …」を選択する。
※「Download Path:」は、テキトーに設定します。
WinDbg_setup
WinDbg_setup_002_rect

4.「Windows Kits Privacy」の画面上でのラジオボタンで、「No」を選択します。
「No」を選ぶ理由は特にありません。なんとなく、です。
WinDbg_setup_003
WinDbg_setup_004_rect

5.「Select the features you want to downlaod」画面で、「Debugging Tools for Windows」以外のチェックを全て外して、「Download」を押します。
WinDbg_setup_005

6.実行すると、「3.」で設定したパスに、必要なファイルがダウンロードされます。
ダウンロードしたファイルのうち、「SDK Debuggers-x86_en-us.msi」を実行します。
WinDbg_setup_006

上記ファイルを実行、処理が正常に終了すると、CDBがインストールされます。
※インストール先は、「C:\Program Files (x86)\Windows Kits\10\Debuggers」下の「x86]あるいは「x64」のいずれかです。

7.インストールが正常に完了すると、Qtの設定画面上でもCDBが選択できるようになります。
WinDbg_setup_007_rect
QtCreatorOption_build_execute_debugger_rect

5.完了
上記の手順を実施することで、QtCreatorでのデバッグができるようになります(なりました)。
WinDbg_setup_008

以上、今回はQtCreatorでのデバッガの設定について記載しました。
実際に動かした結果、確かにブレークポイントで一時停止します。
ただ、難点としては、「とっても重い」ということです。
う~む…。

関連記事

eclipse-juno-logo

C言語でEV3開発(2)

どもです。 今回のエントリーの内容は、前回に引き続き「EV3の開発環境の構築」の追記です。

記事を読む

source_trail_eye_catch

Sourcetrailを試してみました(2)-Eclipseと連携

どもです。 前回のエントリで、ソースコードを解析するオープンソース「Sourcetrail」を紹介

記事を読む

no image

C言語でEV3開発(4)

どもです。 今回のエントリーは、前回のエントリー内容/EclipseでEV3の実行ファイルをビルド

記事を読む

Arduino_Logo

ホールセンサーの種類と使い方(割込み編)

どもです。 前回に引き続き、今回もホールセンサーについてです。 1.前回からの違い 前回の

記事を読む

raspberry-pi

QtでRaspberryPi/GUI開発(9)-SPI通信をしてみた

どもです。 えー。 「Qtで…」とか書いておきながら、今回はQtは出てきません。 今回のエ

記事を読む

no image

C言語でEV3開発(11)-opOUTPUT_STEP_POWERコマンド

どもです。 今回のエントリーでは、再びモーターを動かすためのコマンドについて書きます。 コマンド

記事を読む

iot_at_home_eye_catch

IoT開発(3)-ESP-WROOM-02でデータを送信

どもです。 この記事は、IoT開発(1)-ESP-WROOM-02のセットアップ、IoT開発(

記事を読む

toppers

C言語でEV3開発(22)-ロギング機能

どもです。 前回は、モーターの出力を制御する方法について記載しました。その際に、モータ/車体が期待

記事を読む

no image

C言語でEV3開発(8)-opOUTPUT_POWERコマンド

どもです。 今回のエントリーでは、EV3でモーターを動かします。 なお、今回のエントリーでも

記事を読む

think_about_utest

単体テストの効率化を考える(2)-スタブの戻り値

どもです。 「単体テストの効率化について考える」の2回目です。 (1回目はコチラ:単体テスト

記事を読む

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">

c_sharp_eye_catch
セルに「取り消し線」が設定されているかを判定してみた

どもです。 前回、前々回と、エクセルのセル内の文字列から、「取り

c_sharp_eye_catch
セル内の「取り消し線で消された文字列」の削除を簡単にしてみた

どもです。 前回、C#/OpenXmlを用いて、エクセルのセル内

c_sharp_eye_catch
セル内の「取り消し線で消された文字列」を削除してみた

どもです。 今回は、C#/OpenXmlの組み合わせで、エクセル

c_sharp_eye_catch
C#でバッファの内容を表示する処理を実装してみた-
データ型に従って動的に書式を設定する

どもです。 最近、C#でバッファ/配列の値をコンソールに表示した

arduino_relay_switch_003_self_preservation_circuit_eye_catch
Arduinoでリレースイッチ(3)-自己保存回路

どもです。 前回の記事で、リレースイッチ「AE-G5V-DRV」

→もっと見る

PAGE TOP ↑