Flow-Developers

Raspberry Pi, Raspbian, python, ROS, IoT, 電子工作, 機械学習, Deep learning, ライフハック

Visual Stadio CodeでC/C++の開発環境を簡単に作る(Windows)

はじめに

f:id:flow-dev:20200204072808p:plain

C/C++環境で困ったこと

Visual Stadio CodeにC/C++ for Visual Studio Codeを導入すれば,C/C++コード検索するための環境はおおよそ整いますが,これだけだと「指定した関数が参照されている先を全て検索する」ができません.. この点だけ、Eclipseより劣るので不便でした.

gtagsの導入で解決

しかし調べてみるとC++Intellisenseと,GNU GLOBAL(gtags)を導入することで,「指定した関数が参照されている先を検索する」が可能になることがわかりました.

設定方法をまとめました

今回はWindows環境で,C++Intellisenseと,GNU GLOBAL(gtags)を導入に関する纏まった情報がなかったので,以下に記述します.

環境の作り方

VisualStadioCodeに拡張機能C++Intellisenseを追加する

f:id:flow-dev:20170109080711j:plain

GNU GLOBAL(gtags)をinstallする

GNU GLOBAL(gtags)とは,C/C++の参照関係を記述したタグファイルを生成するライブラリ. GNU GLOBAL(gtags)が詳しいので,以下はポイントを簡単に.

ターミナルを立ち上げて,gtags.exeを実行する.

  • VisualStadioCodeで,「指定した関数が参照されている先を検索する」を行いたいC/C++コード群のフォルダを開く.
  • VisualStadioCodeから"Ctrl+@"で統合ターミナル(コマンドプロンプト)を起動する.
  • 以下のコマンドで,gtags.exeを利用して,「指定した関数が参照されている先を検索する」ためのタグファイルを生成する.
> gtags.exe -v
  • GPATH, GRTAGS, GTAGSという3つのタグファイルが生成される.
  • [参考]C/C++コードの参照関係を変更したタイミングで,再度gtags.exeを実行する必要がある.

C/C++コード上で.「すべての参照の検索」を実行する.

  • VisualStadioCodeで,「指定した関数が参照されている先を検索する」を行いたいC/C++コードファイルを開く.
  • 任意の関数を反転させて,右クリックまたは,Shift+F12で,すべての参照の検索を実行する.

f:id:flow-dev:20170109080725j:plain

  • gtags.exeでタグファイルが正しく生成されていれば,参照先の一覧が表示される.

エラー(実行できない)時に確認すべき点

  • 任意の関数を反転させて,右クリックまたは,Shift+F12で,すべての参照の検索が出来ない場合は,C++Intellisenseプラグインからhttp://adoxa.altervista.org/global/の導入が出来ていない
  • ※gtags.exeでタグファイルが正しく生成されていなければ,結果がありませんと出る.


参考資料