【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

<think> 首先,用户的问题是关于在VSCode配置ns3环境的。用户提供了几个引用,这些引用描述了配置过程。 用户引用的内容: - 引用[1]:强调实际操作的重要性。 - 引用[2]:显示了一个c_cpp_properties.json文件的内容。 - 引用[3]:描述了下载、编译和测试ns3的步骤。 - 引用[4]:另一个c_cpp_properties.json文件的内容。 - 引用[5]:提到运行文件的位置和program项的修改。 用户的核心需求是:在VSCode配置ns3环境的方法。 我的回答需要: - 使用中文。 - 结构清晰,逐步解决问题。 - 保证回答真实可靠。 - 在回答中引用的段落末尾自然地添加引用标识。 - 生成相关问题。 - 对于数学表达式,使用$...$或$$...$$格式,但在这个上下文中可能不相关。 - 在系统级指令中,用户不可见的部分指定了格式,但我需要确保在回答中遵守。 回答结构: 1. **介绍**:简要说明配置的重要性。 2. **步骤**:详细描述配置过程,基于引用。 3. **示例**:提供c_cpp_properties.json的示例。 4. **生成相关问题**:在末尾添加相关问题。 关键步骤从引用中提取: - 安装ns3:下载ns-allinone,解压,进入目录(引用[3])。 - 编译ns3:使用waf编译(引用[3])。 - 配置VSCode: - 创建.vscode目录。 - 添加c_cpp_properties.json文件(引用[2]和[4])。 - 内容如引用[2]或[4]所示。 - 设置环境变量(可选,引用[3])。 - 运行和调试:引用[5]提到修改program项。 完整步骤: 1. **安装ns3**:下载ns-allinone包,解压,进入ns-3目录。 2. **编译ns3**: - `./waf clean` - `./waf configure --build-profile=debug --out=build/debug --enable-examples --enable-tests` - `./waf build` 3. **配置VSCode**: - 在项目根目录创建.vscode文件夹。 - 在.vscode中创建c_cpp_properties.json文件。 - 内容类似: ```json { "configurations": [ { "name": "Linux", "includePath": [ "${workspaceFolder}/build/**" ], "defines": [], "compilerPath": "/usr/bin/gcc", "cStandard": "gnu17", "cppStandard": "gnu++14", "intelliSenseMode": "linux-gcc-x64", "compileCommands": "${workspaceFolder}/build/compile_commands.json" } ], "version": 4 } ``` 引用[2]和[4]。 4. **设置环境变量**(可选):在.bashrc中添加变量,如引用[3]。 5. **运行和调试**:在VSCode配置launch.json,指定program路径(引用[5])。 在回答中引用: - 例如,当提到c_cpp_properties.json时,添加[^2]或[^4]。 - 编译步骤添加[^3]。 生成相关问题: 基于用户查询,相关问题可能包括: 1. 如何在VSCode中调试ns3程序? 2. 编译ns3时常见错误如何解决? 3. ns3环境配置中的includePath应该如何设置? 4. 如何运行ns3的示例程序? 5. 在Windows上配置ns3VSCode是否可行? 最终回答: - 以清晰的方式组织:标题或步骤列表。 - 使用中文。 </think> 以下是针对在VSCode配置ns3环境的详细步骤,基于提供的引用内容整理而成。配置过程包括安装ns3、编译源码、设置VSCodeC++开发环境,以及调试程序。确保您已安装VSCode和必要的扩展(如C/C++扩展)。 ### 步骤1: 安装和编译ns3 1. **下载ns-allinone包** 从ns3官网下载最新版本(如ns-allinone-3.33),解压后进入目录: ```bash cd ns-allinone-3.33/ns-3.33 ``` 2. **编译ns3源码** 使用`waf`工具进行编译。推荐使用debug模式以方便调试: ```bash ./waf clean # 清除旧编译文件 ./waf configure --build-profile=debug --out=build/debug --enable-examples --enable-tests ./waf build # 开始编译 ``` 编译完成后,生成的文件位于`build/debug`目录[^3]。 3. **(可选) 设置环境变量** 在`~/.bashrc`中添加以下变量,简化后续编译命令: ```bash export NS3CONFIG="--enable-examples --enable-tests" export NS3DEBUG="--build-profile=debug --out=build/debug" ``` 运行`source ~/.bashrc`使配置生效[^3]。 ### 步骤2: 配置VSCode开发环境 1. **创建VSCode配置文件** 在ns3项目根目录(如`ns-3.33`)下新建`.vscode`文件夹: ```bash mkdir .vscode ``` 2. **配置c_cpp_properties.json** 在`.vscode`目录下创建`c_cpp_properties.json`文件,内容如下: ```json { "configurations": [ { "name": "Linux", "includePath": [ "${workspaceFolder}/build/**" # 包含编译生成的头文件路径 ], "defines": [], "compilerPath": "/usr/bin/gcc", # 确保路径与系统一致 "cStandard": "gnu17", "cppStandard": "gnu++14", "intelliSenseMode": "linux-gcc-x64", "compileCommands": "${workspaceFolder}/build/compile_commands.json" # 关键:启用代码智能提示 } ], "version": 4 } ``` 此文件确保VSCode正确索引ns3源码和编译输出,支持代码补全和跳转[^2][^4]。 3. **配置launch.json(调试设置)** 在`.vscode`目录下创建`launch.json`,用于调试程序。示例配置: ```json { "version": "0.2.0", "configurations": [ { "name": "Debug ns3", "type": "cppdbg", "request": "launch", "program": "${workspaceFolder}/build/debug/scratch/your_program", # 替换为您的程序路径 "args": [], "cwd": "${workspaceFolder}", "environment": [], "externalConsole": false, "MIMode": "gdb" } ] } ``` - **关键修改**:`program`字段需指向编译生成的二进制文件(例如,`scratch`目录下的示例或您的代码)[^5]。 ### 步骤3: 运行和调试程序 - **运行测试**:在终端执行`./test.py`验证ns3安装[^3]。 - **调试示例**: 1.VSCode中打开ns3项目目录。 2. 打开示例文件(如`examples/tutorial/first.cc`)。 3. 按`F5`启动调试,VSCode会自动使用`launch.json`配置。 ### 注意事项 - **路径一致性**:`compilerPath`和`program`中的路径需与您的系统匹配(e.g., GCC路径可通过`which gcc`确认)。 - **编译问题**:若编译失败,运行`./waf clean`后重试[^3]。 - **实际操作**:配置后务必在真实环境中调试代码,避免“纸上谈兵”[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值