Error: Storage::readChar(): invalid position using Sumo, veins example and omnet++

Error: Storage::readChar(): invalid position using Sumo, veins example and omnet++

我在 Linux Ubuntu 20.04 和 18.04 中一直在使用 Veins (v5.1) 以及 SUMO (v1.8) 和 OMNeT++ (v5.6.2)。当我尝试 运行 静脉提供的示例时,我在 Ubuntu 20.04 和 18.04 中不断收到相同的错误。

根据OMNeT中的信息,错误代码为133或137,上面几行关于错误的信息不多。

Sumo 似乎 运行ning 正确,正在侦听端口 9999,sumo-gui 实际上正在启动。但是,几秒钟后它终止并显示以下错误日志 “错误:Storage::readChar():无效位置”。终端中也有一个错误代码。

过去我在 Ubuntu 14.04 中遇到过这个问题,因为我使用的版本之间存在不兼容问题。这次我使用 veins 网页推荐的版本。 有没有人遇到过这个问题?这可能是操作系统的不兼容问题吗?如果是,有人知道 Ubuntu 18.04 或 20.04 的兼容版本是什么吗?我之前没有使用过 Linux,所以我不确定是否还缺少其他东西。

我在 screenshot 中包含了我遇到的错误,以防万一。

谢谢!

我不知道这是否真的是问题的答案,也不知道为什么会这样。我在我的笔记本电脑 (Ubuntu 18.04) 和两个不同的虚拟机 (Ubuntu 18.04 和 Ubuntu 20.04) 上都试过了,这似乎解决了这个问题。

Veins 应保存在名为 src 的文件夹中,然后导入 OMNeT++ 以避免错误。 Veins 的路径应该和下面类似。

 /home/<me>/<folder>/src/veins-5.1

我在使用 ubuntu 20.04、Omnet++ 5.6.2 和 SUMO 1.9.0 时遇到了同样的问题,我设法通过将 sumo 降级到旧版本。

  1. 先去掉当前相扑:

    $sudo apt-get remove sumo 
    
  2. 然后安装旧版本:

    $sudo apt-get install sumo=1.4.0+dfsg1-1