使用Veins OMNeT ++进行动脉安装

时间:2016-02-29 15:40:20

标签: makefile omnet++ veins

我已经成功安装并测试了Veins v4a2(包括RSUexample)。为了将ITS-G5应用程序层添加到Veins,我尝试使用“Artery”失败,因为在尝试运行该示例时,它会抛出如下错误:

  

网络期间模块(cModule)RSUExampleScenario(id = 1)出错   设置:找不到类“Veins :: ObstacleControl”   也许它的代码没有链接,或者类没有在> Register_Class()中注册,或者在模块和通道的情况下,使用> Define_Module() / Define_Channel()

我遵循的步骤是:

  1. 下载Vanetza(以及所需的模块)
  2. 构建没有错误的Vanetza
  3. 下载动脉
  4. 使用Vanetza构建Artery,没有错误
  5. 将“Artery”文件夹和文件(示例,src,tests,Makefile,configure ...)复制到Veins文件夹,覆盖文件。
  6. 静脉的构建正确完成,但两者(动脉和静脉)示例的执行都因显示的错误而失败。
  7. 实际上,如果我尝试直接从动脉代码运行动脉或RSU示例而没有静脉代码(似乎动脉代码已经保留静脉),同样的错误就会引发。

    以前有人遇到过这个问题吗?

1 个答案:

答案 0 :(得分:2)

首先,您不需要将Artery复制到Veins并覆盖任何文件,因为您的假设是正确的:Artery的存储库包含完整的Veins源,因为Artery是一个基于Veins的附加组件。 错误消息实际上有点误导,但如果仔细查看完整输出日志,您很可能会找到一条关于未定义引用的行,说明编译后的二进制文件中实际缺少哪个符号。这通常是由于在调试中构建Vanetza,在发布模式下构建Artery,反之亦然。