我是靠谱客的博主 烂漫纸飞机,最近开发中收集的这篇文章主要介绍Veins(车载通信仿真框架)入门教程(二)——调用第三方库Veins(车载通信仿真框架)入门教程(二)——调用第三方库,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Veins(车载通信仿真框架)入门教程(二)——调用第三方库

在借助Veins进行自己的研究时我们经常需要实现一些比较复杂的功能,有时就需要借助第三方库的帮助。
博主的研究需要使用神经网络,但是自己编写的效果不佳,便借助了第三方库mlpack。

注意:因为Veins基于OMNeT++运行,而OMNeT++又是基于C++的,所以我们找的第三方库也应当是基于C++的。这样做的好处是如果第三方库内一些文件有问题、调用失败或者你需要加入自己的功能,可以直接copy进你的项目文件里更改后调用。

以Veins自带的examples为例

安装第三方库后,在程序内通过include引用相应文件
比如:

#include <mlpack/prereqs.hpp>

之后若采取“右键点击veins-4.6/examples/veins/omnetpp.ini选择Run As > OMNeT++ simulation”的方式运行仿真程序,则会报错“Error: Cannot load library '../..src//libveins.so'

其实我们只要换一种启动方式即可,进入veins-4.6/examples/veins/omnetpp.ini文件夹,右键开启终端后输入如下代码(执行代码1)即可正常启动:

opp_run -m -n ../../examples/veins:.:../../src/veins --imag-path=../../images -l /usr/local/lib/libmlpack.so -l ../../src/veins omnetpp.ini

其实通过OMNeT++右键点击启动实际上是执行了如下代码(执行代码2):

opp_run -m -n ../../examples/veins:.:../../src/veins --imag-path=../../images -l ../../src/veins omnetpp.ini

在你引用第三方库后,OMNeT++默认的执行代码2缺少了对第三方库的引用所以报错,也就是执行代码1内的-l /usr/local/lib/libmlpack.so(此处博主对mlpack的so库进行调用,读者自行更改为自己所需的库,当然注意文件路径也要更换)

相关内容其实在OMNeT++的说明文件里有记录:
这里写图片描述

最后

以上就是烂漫纸飞机为你收集整理的Veins(车载通信仿真框架)入门教程(二)——调用第三方库Veins(车载通信仿真框架)入门教程(二)——调用第三方库的全部内容,希望文章能够帮你解决Veins(车载通信仿真框架)入门教程(二)——调用第三方库Veins(车载通信仿真框架)入门教程(二)——调用第三方库所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(54)

评论列表共有 0 条评论

立即
投稿
返回
顶部