首页 > 解决方案 > 将 INET 与 OMNETPP 链接

问题描述

这是我第一次在 stackoverflow 上发帖,很高兴终于能加入社区。

我正在尝试为 Omnet++ 安装 INET,我收到以下错误,“错误:无法从 '.' 加载 NED 源:声明的包 'inet...' 与文件中的预期包''不匹配...内德”。

我的 omnetpp 示例可以正常工作,所以我知道这不是 omnetpp 问题,尽管当我尝试通过“帮助 > 安装模拟模型”安装 inet 时出现错误,所以我只是克隆了 git repo。我目前在示例中有我的 inet 文件夹。

除了尝试在 IDE 上运行它之外,当我使用 opp_run 运行它时出现此错误。

有谁知道如何将 omnetpp 与 inet 链接?如果它在命令行上,我会更喜欢,但我也不介意它是否在 IDE 上。

标签: omnet++inet

解决方案


不是链接器问题。由于您可以启动实际的可执行文件,因此链接成功。错误是关于加载的 NED 文件未正确加载,原因是您应该指定 NED 层次结构的根文件夹,并且应该将其指定为命令行参数。在 INET 中,您必须指定该文件夹src并且该examples文件夹是“ NED 文件夹”。为此使用-n命令行选项。

注意 1:作为旁注,INET 已经包含一个 bash 脚本 (src/run_inet) 可以为您执行此操作,因此通常您应该通过调用该脚本来运行 INET 模拟。

注意 2:如果您使用的是 INET 4.x,那么在尝试运行示例(或构建 INET)之前,您必须在 INET 根文件夹中提供一个“setenv”脚本。那个设置了最佳操作所需的环境变量。即在做任何事情之前,您必须获取 setenv 脚本(位于 omnetpp 根目录中的脚本和位于 inet 根目录中的脚本)

$ . setenv

推荐阅读