4

少し前に、CLionにリモート GDB デバッグのサポートが追加されました。Seggers の J-Link GDB サーバーでセットアップしようとしています。

私のセットアップ:

  • Ubuntu 16.04 を実行する VM VirtualBox
  • J-Link ドライバー: V6.10
  • 対象チップ:nRF51(ARM Cortex M0)
  • CLion 2016.2.2

私は通常 Windows で作業しますが、CLion は Windows でリモート GDB をサポートしていないため、VirtualBox で Ubuntu を実行して動作させようとしています。上記のリンクにあるブログの助けを借りて、画像に示すように CLion でデバッガーを構成しました。私が使用した引数は、J-Link のドキュメント (ドキュメント: UM08001) といくつかの推測に基づいています。 GDB サーバーのセットアップ

私の問題は、デバッガーを実行するとプロセスが停止し、CLion のコンソール出力が次のようになることです。

「ターゲットに接続できませんでした。電源、接続、および設定を確認してください。」

端末から JLinkGDBServer を実行しようとしましたが、次のようになりました。

/usr/bin/JLinkGDBServer -device nrf51422_xxAC -if swd -speed 1000 -endian little
SEGGER J-Link GDB Server V6.10 Command Line Version

JLinkARM.dll V6.10 (DLL compiled Sep 14 2016 16:46:16)

-----GDB Server start settings-----
GDBInit file:                  none
GDB Server Listening port:     2331
SWO raw output listening port: 2332
Terminal I/O port:             2333
Accept remote connection:      yes
Generate logfile:              off
Verify download:               off
Init regs on start:            off
Silent mode:                   off
Single run mode:               off
Target connection timeout:     0 ms
------J-Link related settings------
J-Link Host interface:         USB
J-Link script:                 none
J-Link settings file:          none
------Target related settings------
Target device:                 nrf51422_xxAC
Target interface:              SWD
Target interface speed:        1000kHz
Target endian:                 little

Connecting to J-Link...
J-Link is connected.
Firmware: J-Link OB-SAM3U128-V2-NordicSemi compiled Jul  5 2016 08:42:09
Hardware: V1.00
S/N: 681666518
Checking target voltage...
Target voltage: 3.30 V
Listening on TCP/IP port 2331
Connecting to target...Connected to target
Waiting for GDB connection...

誰かが私が間違っていることの手がかりを持っていますか?

4

1 に答える 1

3

GDB サーバーと GDB 自体を混同している可能性があります。これらは、GDB サーバー設定ではなく、CLion の GDB リモートデバッグ構成で設定する必要がある GDB オプションです。

つまり、最初に JLinkGDBServer を手動で、たとえば端末から、既に行ったように実行し、GDB が接続されるのを待ちます。この時点で、接続ポートに注意する必要があります。

TCP/IP ポート 2331でのリッスン
ターゲットに接続中...ターゲットに接続
GDB接続を待機しています...

次に、CLion で GDB リモート デバッグ構成を編集してホスト GDB を使用し (ほとんど/usr/bin/gdbの場合、必要に応じてインストールしますsudo apt install gdb)、上記のポートを「ターゲット リモート」文字列の一部として使用します。

  • GDB:/usr/bin/gdb
  • 「ターゲット リモート」引数::2331

ポートの前のコロンに注意してください。これは、TCP を使用して localhost に接続するための省略形です。念のため、明示的な形式はtcp:localhost:2331.

これで、デバッグ セッションを開始できます。CLion は構成されたホスト GDB を開始し、GDB は指定された TCP 接続を介して JLinkGDBServer と通信し、最後に GDB サーバーがデバイスとチャットします。

于 2016-09-18T10:50:34.670 に答える