vsomeip环境搭建保姆级教程

vsomeip环境搭建保姆级教程

ubuntu环境搭建

{% links %}

  • site: VMware搭建ubuntu保姆级教程

    url: https://zhuanlan.zhihu.com/p/1903219373906327339

    desc: flechazo

    image: https://q1.qlogo.cn/g?b=qq&nk=2861099&s=5

    color: “#9d5b8b”

{% endlinks %}

vsomeip环境搭建

官网:https://github.com/COVESA/vsomeip

在这里插入图片描述

代码仓库

Github

https://github.com/COVESA/vsomeip

https://github.com/COVESA/vsomeip_py

压缩包

这里我提供压缩包供大家下载

通过网盘分享的文件:vsomeip
链接: https://pan.baidu.com/s/1m3P–jxc7DNWGixNbwS96Q?pwd=CDD0
提取码: CDD0

vsomeip之Cpp环境

下载vsomeip

  • 这里直接通过ssh将代码copy到ubuntu
  • (共享文件夹会出现不支持创建link的情况)
  • 当然你的网络如果可以的话就直接拉github吧

在这里插入图片描述

安装依赖

先运行一个终端吧
在这里插入图片描述

右键可以copy path

在这里插入图片描述

我们先进入vsomeip-master,输入

cd /mnt/hgfs/vsomeip/vsomeip-master/vsomeip-master

可以看到路径变啦

在这里插入图片描述

安装cmake

sudo apt install cmake

然后根据提示输入Y
在这里插入图片描述

成功啦,我们继续

在这里插入图片描述

安装g++

sudo apt install g++

在这里插入图片描述

安装Boost

sudo apt install libboost-all-dev

在这里插入图片描述

安装git

sudo apt install git

安装curl

sudo apt install curl

安装build-essential

sudo apt install build-essential

安装doxygen

sudo apt install doxygen

安装libsystemd-dev

sudo apt install libsystemd-dev

安装graphviz

sudo apt install graphviz

安装automotive-dlt

下载压缩包

通过网盘分享的文件:vsomeip
链接: https://pan.baidu.com/s/1m3P–jxc7DNWGixNbwS96Q?pwd=CDD0
提取码: CDD0

从git仓库clone

git clone https://github.com/GENIVI/dlt-daemon.git

之后开始在命令行里编译然后安装

mkdir build && cd build
cmake ..
make
sudo make install

安装benchmark

下载压缩包

通过网盘分享的文件:vsomeip
链接: https://pan.baidu.com/s/1m3P–jxc7DNWGixNbwS96Q?pwd=CDD0
提取码: CDD0

从git仓库clone

git clone https://github.com/google/benchmark.git

之后开始在命令行里编译然后安装

mkdir build && cd build
cmake .. -DBENCHMARK_ENABLE_GTEST_TESTS=OFF
make
sudo make install

安装googletest

下载压缩包

通过网盘分享的文件:vsomeip
链接: https://pan.baidu.com/s/1m3P–jxc7DNWGixNbwS96Q?pwd=CDD0
提取码: CDD0

从git仓库clone

git clone https://github.com/google/googletest.git

之后开始在命令行里编译然后安装

mkdir build && cd build
cmake ..
make
sudo make install

导出路径,然后输出一下路径

export GTEST_ROOT=/home/carlchai/Desktop/flechazo/googletest-main
echo $GTEST_ROOT

然后终于结束啦,可以继续回到vsomeip啦

编译vsomeip

在vsomeip目录下创建一个文件夹并进入

mkdir build
cd build

执行cmake

cmake ..

在这里插入图片描述

cmake完成

在这里插入图片描述

接着make

make

等待编译吧

在这里插入图片描述

终于完成啦

在这里插入图片描述

然后进去example下吧

cd example
/* 如果仅仅修改了example的话只需要在这里make就好 */
make

在这里插入图片描述

跑一下试试吧

额失败啦报错:

1 Configuration module could not be loaded!

经过排查这里是因为没有环境变量导致,也就是说我们需要把这个libvsomeip3-cfg.so的路径加一下

在这里插入图片描述

这里填上路径之后就在example路径下make一下

在这里插入图片描述

让我们再run一下吧

在这里插入图片描述
可以看到已经正常跑起来了
在这里插入图片描述

接下来我们来搭建一下python的环境吧

Python环境

下载代码

拿到代码之后打开一个vscode并打开一个终端吧

在这里插入图片描述

生成扩展

输入

sudo ./package.sh

额找不到?这样吧这里看到这个package.sh的第一行有一个bash那我们试试这个吧

sudo bash ./package.sh

在这里插入图片描述

好吧根据提示,我们缺少python环境

安装python

python3 --version

看看是否有python

在这里插入图片描述

如果没有的话就

sudo apt install python3

安装pip这里输入

sudo apt install python3-pip

在这里插入图片描述

再次运行

sudo bash ./package.sh

在这里插入图片描述

可以看到有很多报错,这里是说没找到vsomeip的路径,我们来加一下

配置python扩展

在这里插入图片描述

在这里将路径换成自己刚才编译的vsomeip路径

我这里就直接用vsomeip的c++的路径了,因为后期调试添加的信息可以同步,之后再次执行

sudo bash ./package.sh

在这里插入图片描述

可以看到这里就成功啦🚃

让我们运行python吧

首先安装一下python扩展

在这里插入图片描述
随便找一个client吧,点击右上角的Run / Debug,我这里直接Debug了
在这里插入图片描述

可以看到已经启动了

好可以先关掉了,因为这个时候我们的网络环境还未配置,所以通过wireshark还不能抓到报文

网络配置

记得要桥接一下网络哦

{% links %}

  • site: VMware搭建ubuntu保姆级教程

    url: https://blog.csdn.net/qianshang52013/article/details/147749786?spm=1001.2014.3001.5501

    desc: flechazo

    image: https://q1.qlogo.cn/g?b=qq&nk=2861099&s=5

    color: “#9d5b8b”

{% endlinks %}

在ubuntu里配置网络

在这里插入图片描述

我这里设置为Manual并设置Address为192.168.20.1,接着点击Apply

在这里插入图片描述

输入ip a,可以看到ens37的ip被我们设置成功为192.168.20.1

在这里插入图片描述

接着配置route

查看route表输入

ip route show

在这里插入图片描述

因为我们要发送的目标是224.224.224.245,这是一个多播地址

我这里直接设置单播转发路由了输入

sudo ip route add 224.224.224.245 dev ens37

这个是存在老化时间的,时间长了没有通信就会被清除

在这里插入图片描述

再次ip route show就可以看到刚才配置的route了

环境

环境ubuntuwindows开发板
网络桥接ens37以太网 8eth1
IP192.168.20.1192.168.20.2
抓包抓包

接着在网线另一端,我们在windows这里抓包

过滤

ip.src == 192.168.20.2 || ip.src == 192.168.20.1

在这里插入图片描述

可以看到这里有SOME/IP-SD的报文了

Python调用C++扩展

接下来由于vsomeip_py好久未更新了,有一个接口未实现,我们自行实现一下

这里我拆分到另一个文章中去介绍

【之后会把文章链接更新到这里】

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

FlechazoCLF

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值