NS3 Aqua-sim之二:配置VSCode
环境:
Ubuntu 18.04.6 LTS
gcc version 7.3.0
NS-3.26
安装VSCode
本人使用的方式较为简单,从Ubuntu自带的软件中心搜索 code
点击安装
网络给出的方式 snap install code
但是我安装失败。安装方式多种多哟,百度即可
配置VSCode
首先贴大佬链接ns3 + VS Code开发环境配置完美版,本人跟从大佬教程安装成功,但也遇到一些小问题
配置代码提示
安装vscode
后打开软件安装 c/c++
扩展
然后,在VS Code界面中,按F1(Ctrl+Shift+P)
调出命令面板,配置相关设置c/c++: Edit configurations(json)
:
{
"configurations": [
{
"name": "Linux",
"includePath": [
"${workspaceFolder}/build/**"
],
"defines": [],
"compilerPath": "/usr/bin/gcc",
"cStandard": "gnu17",
"cppStandard": "gnu++14",
"intelliSenseMode": "linux-gcc-x64"
}
],
"version": 4
}
vscode
可以进行代码提示了!!!!
配置build
在大佬的教程中没有说明如何生成 task.json
,我实践了一下按 F5
后会自动生成一个文件,再修改根目录中 .vscode/tasks.json
文件即可,以下为我的配置
配置中 command
变量为 ns3
中 waf
的路径,根据个人文件放置情况进行更改
{
"tasks": [
{
"type": "cppbuild",
"label": "C/C++: cpp 生成活动文件",
"command": "/home/用户名/ns3.27/waf",
"args": [
// "-fdiagnostics-color=always",
// "-g",
// "${file}",
// "-o",
// "${fileDirname}/${fileBasenameNoExtension}"
],
"options": {
"cwd": "${fileDirname}"
},
"problemMatcher": [
"$gcc"
],
"group": {
"kind": "build",
"isDefault": true
},
"detail": "调试器生成的任务。"
}
],
"version": "2.0.0"
}
大佬给的方式:点击菜单栏 终端(Terminal)
-> 配置默认生成任务(Configure Default Build Task...)
由于直接更改的 F5
生成的配置文件,因此可以直接使用该配置进行调试
再点击 F5
查看配置文件是否可运行,如果出现提示找不到so库,解决方法:
执行如下命令,将 ns3
编译时生成的 so
文件复制到 /lib
目录下:
root@ns3-vm:~/ns-allinone-3.33/ns-3.33# cp build/lib/* /lib/
我使用的是 ns3.27
,so文件并不在 lib
中,因此需要自行将build文件夹中so文件复制到lib中
提供一个讨巧方法:在 build
手动建立 lib
文件夹,中so文件手动复制到lib
文件夹中,再使用以上命令即可
再次使用F5调试模拟脚本,Done!!!!
配置launch.json
运行过后会提示 launch.json
问题
点击 转到launch.json
按钮配置该文件
{
// 使用 IntelliSense 了解相关属性。
// 悬停以查看现有属性的描述。
// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "C/C++: cpp 生成活动文件",
"preLaunchTask": "C/C++: cpp 生成活动文件", //如果不开启修改代码运行不生效 该参数填写与tasks.json中label相同参数
"type": "cppdbg",
"request": "launch",
"program": "/home/cccht/ns3.27/build/scratch/${fileBasenameNoExtension}",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
// "externalConsole": false,
"MIMode": "gdb",
"miDebuggerArgs": "-q -ex quit; wait() { fg >/dev/null; }; /usr/bin/gdb -q --interpreter=mi",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
},
{
"description": "Set Disassembly Flavor to Intel",
"text": "-gdb-set disassembly-flavor intel",
"ignoreFailures": true
}
]
}
]
}
注意配置 "preLaunchTask": "C/C++: cpp 生成活动文件"
否则修改文件不显示修改
遇到的其他小问题
vs code 内置终端,字体间隔过大问题
vs点击 文件-首选项-设置
在输入框中搜索 terminal.integrated.fontFamily
在字体中输入 monospace
或者其他你想要的字体,就可以了