dorapon2000’s diary

忘備録的な。セキュリティとかネットワークすきです。

VSCodeでns3のインクルードパスの設定

VSCodeでns3のファイルを開くとns3のモジュールのインクルードパスの設定がなされていないというエラーが出るので直しました。VSCode上でインクルードパスが認識できないというエラーなので、コード自体はちゃんと動きます。

問題

f:id:dorapon2000:20190606091030p:plain

この赤線のうにょうにょが気になるというお話です。このエラーマークを出しているのはC/C++拡張機能(ms-vscode.cpptools)で、C++を触っているとおすすめに出てくるやつです。

解決方法

ns3を触るこのワークスペースでだけ、ns3のモジュールのインクルードパスを追加します。

コマンドパレット(ctrl + shift + p)を開いてC/C++: Edit configurations (JSON)を選択します。c_cpp_properties.jsonというファイルが開くので、"includePath"にns3のモジュールのパスを追加します。ns3をインストールした際にできるns-3.xxというフォルダの中のbuildというフォルダがそうです。僕の場合、/home/****/ns-3.29/buildを追加しました。

f:id:dorapon2000:20190606093033j:plain

ファイルを保存すればエラーは消えているはずです。ちなみに、c_cpp_properties.jsonワークスペースの.vscode/以下にありました。

$ ls .vscode
ipch  c_cpp_properties.json  launch.json

参考

How to enable syntax highlighting and auto-completion for NS-3 in VSCode?

include - Workspace-specific includePath for Visual Studio Code - Stack Overflow