#author("2017-07-30T09:49:55+09:00","","")
[[bash on windowsでのコンパイル環境作成]]

*VisualStudioCodeでgdbデバッグする環境作成 [#n29e0c02]
bunnnycoindをVisual Studio Codeでデバッグする環境を作成する。
-前提:[[bash on windowsでのコンパイル環境作成]]がされていること
+VisualStudioCodeインストール(以後VSCodeと記述する)
+VSCodeでbunnycoinフォルダを開く
++VSCodeを起動して、メニューから「ファイル」>「フォルダーを開く」でbunnycoinフォルダを指定してフォルダを開く
--開くと、bunnycoinフォルダに ".vscode"フォルダが作成される。 bunnycoinを編集する際のVSCodeに関する設定がここに入る。
+C/C++拡張機能のインストール
++メニューから、「表示」>「拡張機能」を選択する。
++拡張機能で c/c++ を検索して microsoft から提供されている c/c++ 拡張機能をインストールする。
+ターミナルのシェルをbashに変更
++メニューから「ファイル」>「基本設定」>「設定」を選択する。
++画面右あたりの「ワークスペースの設定」をクリック。
++settings.json に以下2行追加して保存
     "terminal.integrated.shell.windows": "C:\\Windows\\sysnative\\bash.exe",
     "files.eol": "\n"
++メニューから「表示」>「統合ターミナル」を選択
++表示されたターミナルがpowershellになっている場合は画面右下あたりターミナルの追加ボタン(+アイコン)をクリックする。
++bashを使用していいか聞かれるので"allow"を選択する。
++これで画面下にbashが表示される。
--これで別ウインドウ開いてコンパイルとかしなくて良くなる。
+gdbデバッグ構成の追加
++メニューから、「デバッグ」>「構成を開く」を選択する。
++launch.jsonが表示されるので中身を以下のように変更
 {
   "version": "0.2.0",
   "configurations": [
     {
       "name": "(gdb) Bash on Windows Launch",
       "type": "cppdbg",
       "request": "launch",
       "program": "~/bunnycoin/src/bunnycoind", //ここ自分の環境に合わせる
       "args": [],
       "stopAtEntry": false,
       "cwd": "~/bunnycoin/src", //ここ自分の環境に合わせる
       "environment": "-datadir=/mnt/d/home/oquto/.bunnycoin/test1", //ここ自分の環境に合わせる
       "externalConsole": true,
       "pipeTransport": {
         "debuggerPath": "/usr/bin/gdb",
         "pipeProgram": "C:\\Windows\\sysnative\\bash.exe",
         "pipeArgs": ["-c"],
         "pipeCwd": ""
       },
       "sourceFileMap": {
         "/mnt/d": "d:\\"  // ここ、ubuntuのホームフォルダをおいているドライブになるように書き換え
       },
       "setupCommands": [
           {
               "description": "Enable pretty-printing for gdb",
               "text": "-enable-pretty-printing",
               "ignoreFailures": true
           }
       ]
     }
   ]
 }
+デバッグ動作テスト
++適当なソース(init.cppのAppInitとかやりやすい)開いてブレークポイントを設定
--行数の左側クリックすると赤丸(ブレークポイント)が設定される
++メニューから「デバッグ」>「デバッグの開始」するとブレークポイントで実行が止まり、色々出来るようになる。


トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS