Codelite 无法识别 ns-3 文件

问题描述

我对 C++ 开发很陌生,我想使用 IDE。我下载了 codelite,一切正常。

问题 最近我开始为 NetworkSimulator3 或 Ns3 开发一个应用程序,它与 Waf(https://waf.io/) 一起运行。仅将 codelite 用于我的应用程序,并在终端上使用 waf 执行 build&Run 似乎是错误的。

最后,codelite 并没有识别出一堆 ns3 文件,并不断指出错误

我尝试做的

  1. 我尝试在单个工作区中添加所有 Ns3 文件以及我的应用程序文件,希望一切正常。相反,我仍然收到一堆“没有这样的文件或目录”错误,尽管这些文件存在并添加到 IDE 中

在导入时,Ns3 要求我们这样调用: #import 虽然 .h 在另一个文件夹中: src/network/model/packet.h

有一些 wscripts 文件可能适用于这些绑定,尽管我不是 100% 确定。

所以我也尝试过:

  1. 在我的应用程序的同一文件夹中添加 .h
  2. 创建一个名为 ns3 的新虚拟文件夹,并在那里添加标题
  3. 在编译器的包含路径中包含带有头文件文件
  4. 链接器中包含带有标题文件夹,就像它是一个

目前没有任何效果

我只是想在 IDE 上打开 Ns3,这样我就可以在不显示几个错误的情况下工作。甚至可能有一些自动完成功能

你们能帮我解决这个问题吗?

编辑 我还添加一个自定义构建”,所以我可以使用 waf 执行和构建我的项目,但 IDE 错误并没有消失

解决方法

在导入时,Ns3 要求我们这样调用:#import 虽然 .h 在另一个文件夹中:src/network/model/packet.h

使用 导入的头文件在构建 ns-3 时从 src/module/(model/helper) 复制到 build/ns3。您需要将 build/ 添加为包含文件夹(例如 -I/path/to/ns-3-dev/build),这将使 正常工作。

不确定其他问题,因为我从未尝试过 CodeLite。

我只是想在 IDE 上打开 Ns3,这样我就可以在不显示几个错误的情况下工作。甚至可能有一些自动完成功能?

如果我可以推荐,请尝试CMake buildsystem。克隆代码并创建一个 cmake 缓存文件夹(例如 mkdir cmake_cache),然后生成 CodeLite 项目(例如 cd cmake_cache && cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=1 -G "CodeLite - Ninja" ..-G "CodeLite - Unix Makefiles"),然后使用 CodeLite 在 cmake_cache 中打开该项目。 :)

更新:刚刚在他们的博客上看到,使用 cmake 时,代码完成需要导出编译命令。 https://codeliteide.blogspot.com/2014/02/codelite-ide-60-cmake-and-clang-code.html

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...