如何将NetworKit用作OMNeT ++中的库?

时间:2019-05-27 12:20:11

标签: c++ omnet++ networkit

我正在尝试构建NetworKit的C ++核心,我想将其用作OMNeT ++中的库。我按照README文件中的说明使用cmakemake all构建代码。然后,我尝试遵循将NetworKit用作库部分中的说明,但是此处显示的示例与源代码不一致。特别是,目录NetworKit/graph不包含Graph.h文件。有一个Graph.hpp文件,但是在另一个目录中。另外,LibDemo.cpp文件丢失。自述文件是过时的还是我在这里缺少什么?

编辑
这是我上面的帖子的更新。显然自述文件不是最新的。无论如何,我都构建了NetworKit的C ++ Core。我将该库包含在我的OMNeT ++应用程序中,如下所示:
#include <graph/Graph.hpp>
在OMNeT ++中,在我的项目Properties | OMNeT++ | Makemake中,然后选择src | Options | Custom,我添加了以下内容:

INCLUDE_PATH += -I/path/to/networkit/include/networkit
LIBS += -L/path/to/networkit/build_lib -lnetworkit

构建OMNeT ++项目时,出现以下错误:

/path/to/networkit/include/networkit/graph/../Globals.hpp:42:14: error: expected unqualified-id 
const double PI = 2.0*std::acos(0);
             ^
/path/to/omnetpp-5.4.1/include/omnetpp/simkerneldefs.h:47:19: note: expanded from macro 'PI'
#define PI        3.141592653589793
                  ^

有人可以帮我吗?预先谢谢你!

1 个答案:

答案 0 :(得分:0)

您是正确的,文档已过期,LibDemo.cpp已在此处删除:https://github.com/kit-parco/networkit/commit/a5b2c1f0c9336e783c8fb0cd956326d960451914

如果您要使用文档的此部分仍然有效的旧版本,则应为4.2版,这是此文件的最后一个版本。出于某种原因,有人在这里制作了该版本的克隆:https://github.com/SharafMohamed/NetworKit