【NS3笔记】ns3+VSCode开发环境配置

摘要

本篇笔记记录了根据B站教程(ns3+VSCode开发环境配置完美版)配置NS3+VSCode开发环境的流程,在VSCode环境中实现NS3代码的代码智能提示、运行、调试。

资源

安装好了ns3+vs code的vmware workstation虚拟机
链接: https://pan.baidu.com/s/1UtTAOH4XtfPoByptILpmiA 提取码:7pi4
备用资源:
链接: https://pan.baidu.com/s/1oZCrNDrY7ZRxbo5Vf4PXzQ?pwd=6mht 提取码: 6mht

运行VSCode

首先,在ns3源码目录下启动Code:

root@ns3-vm:~ # cd ns-allinone-3.33/ns-3.33/
root@ns3-vm:~/ns-allinone-3.33/ns-3.33 # code . --user-data-dir=/root/.vscode-root

提示:以普通用户身份运行code时,不需要加“–user-data-dir=/root/.vscode-root”

代码智能提示

然后,在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
}

可以进行代码提示了!!!!
附:
虚拟机之与物理机进行文本的复制粘贴

配置build

在这里插入图片描述

{
	"version": "2.0.0",
	"tasks": [
		{
			"type": "cppbuild",
			"label": "C/C++: cpp build active file",
			"command": "./waf",
			"args": [],
			"options": {
				"cwd": "${workspaceFolder}"
			},
			"problemMatcher": [
				"$gcc"
			],
			"group": {
				"kind": "build",
				"isDefault": true
			},
			"detail": "compiler: /usr/bin/cpp"
		}
	]
}

按下ctrl+shift+b将调用waf进行编译

配置gdb调试

按F5,选择“C++(GDB/LLDB)” ,之后选择“waf - Build and debug active file compiler:/usr/bin/g++”:
在这里插入图片描述
在这里插入图片描述
使用F5调试模拟脚本,出错:提示找不到so库,解决方法:

执行如下命令,将ns3编译时生成的so文件复制到/lib目录下:

root@ns3-vm:~/ns-allinone-3.33/ns-3.33# cp build/lib/* /lib/

再次使用F5调试模拟脚本,Done!!!!

参考文档
https://www.bilibili.com/opus/494071708926899481?spm_id_from=333.1387.0.0

### 配置运行 NS-3 网络仿真平台 #### 安装 VSCode 和 C/C++ 扩展 为了在 Ubuntu 上使用 VSCode 进行开发,需先完成软件包的安装。通过官方渠道获取并安装最新版本的 Visual Studio Code 后,还需安装 Microsoft 提供的 C/C++ 扩展来支持 C++ 项目开发[^1]。 #### 创建工作区并初始化配置 选择一个合适的文件夹作为工作空间,并利用该路径启动 VSCode 实例。按下 `F1` 键激活命令面板,在其中执行必要的初始化操作,比如调整 `includePath` 参数以适应本地环境中的头文件位置,从而确保 IntelliSense 功能正常运作[^2]。 #### 添加 `.vscode` 文件夹及其内容 于项目的根目录处建立名为 `.vscode` 的隐藏文件夹用于存放特定于 IDE 的设置文件。这些文件通常包括但不限于 launch.json (定义调试会话选项),tasks.json (指定构建任务) 等重要组件。对于希望集成 NS-3VSCode 而言,则可能还需要额外定制化一些脚本或者 JSON 来简化日常使用的流程。 #### 整合 NS-3 模拟框架 考虑到 NS-3 是专为研究目的设计的一个离散事件网络模拟器,因此除了上述常规步骤外,还应特别注意针对 NS-3 特有的需求做出相应安排。例如,可以考虑借助 Python 库如 ns3-gym 或者其他插件实现更紧密的合作模式;另外也要留意系统资源占用情况以免影响性能表现[^3]。 ```json // 示例:launch.json 部分片段展示如何配置 GDB 调试器连接到已编译好的 NS-3 可执行程序 { "version": "0.2.0", "configurations": [ { "name": "(gdb) Launch", "type": "cppdbg", "request": "launch", "program": "${workspaceFolder}/build/scratch/subdir/ns3-dev-scratch-simulator-debug", "args": [], "stopAtEntry": false, "cwd": "${fileDirname}", "environment": [], "externalConsole": true, "MIMode": "gdb" } ] } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值