vsomeip 快速入门

news2025/2/4 22:46:40

vsomeip 快速入门

文章目录

      • vsomeip 快速入门
        • 1. 下载仓库
        • 2. 编译
          • 2.1 安装相关依赖
          • 2.2 编译vsomeip
          • 2.3 编译hello_world example
        • 3. 运行

1. 下载仓库

git clone https://github.com/COVESA/vsomeip.git

2. 编译

2.1 安装相关依赖

我的ubuntu 版本是20.04,所以以ubuntu 20.04为例。

vsomeip依赖 Boost,所以我们要先安装 Boost(版本在1.55-1.74之间),官方文档上对应的boost包版本过低。

sudo apt-get install gcc g++ make
sudo apt install cmake
sudo apt-get install libboost-system-dev libboost-thread-dev libboost-log-dev
sudo apt-get install asciidoc source-highlight doxygen graphviz
2.2 编译vsomeip
cd vsomeip
mkdir build
cd build
cmake ..
make
sudo make install

运行上述命令进行编译vsomeip库,其中运行make之后的编译很慢,大约需要四五分钟,耐心等待就好。

2.3 编译hello_world example

clone 下载的vsomeip中自带一个demo hello_world,我们先编译对应的helloworld程序

Helloworld程序的编译方法也可以查看自带的readme vsomeip/examples/hello_world/readme

回到build目录下,执行下列命令:

make --build . --target hello_world
cd ./examples/hello_world/
make
sudo make install 
sudo ldconfig

运行后编译就完成。

3. 运行

编译完成之后,会在对应的编译目录下生成对应helloworld的二进制程序:hello_world_client和hello_world_service

此时不能安装readme里面写的执行

Running Hello World Example
---------------------------

The Hello World Example should be run on the same host.
The network addresses within the configuration files need to be adapted to match
the devices addresses.

To start the hello world client and service from their build-directory do:

HOST1:
VSOMEIP_CONFIGURATION=../helloworld-local.json \
VSOMEIP_APPLICATION_NAME=hello_world_service \
./hello_world_service

HOST1:
VSOMEIP_CONFIGURATION=../helloworld-local.json \
VSOMEIP_APPLICATION_NAME=hello_world_client \
./hello_world_client

我们在 …/ 目录下并不能找到 helloworld-local.json这个文件。

所以我们需要将 vsomeip/examples/hello_world/helloworld-local.json 文件复制到二进制文件生成的目录下才能执行。

复制后,vsomeip/buuld/examples/hello_world的目录结构为:

image-20221220161547585

下面运行

HOST1运行service:
env VSOMEIP_CONFIGURATION=./helloworld-local.json \
VSOMEIP_APPLICATION_NAME=hello_world_service \
./hello_world_service

HOST1运行client:
env VSOMEIP_CONFIGURATION=./helloworld-local.json \
VSOMEIP_APPLICATION_NAME=hello_world_client \
./hello_world_client

运行结果如下:

image-20221220161725009

image-20221220161743952

此时,一个简单的vsomeip cilent端和service端的通信就搭建完成了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/103346.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python幂分布

文章目录幂分布帕累托分布Zipf分布power(a)p(x)axa−1p(x)ax^{a-1}p(x)axa−1幂分布pareto(a)p(x)amaxa1p(x)\frac{am^a}{x^{a1}}p(x)xa1ama​帕累托分布zipf(a)p(k)k−aζ(a)p(k)\frac{k^{-a}}{\zeta(a)}p(k)ζ(a)k−a​齐普夫分布 幂分布 幂分布的形式是非常简单的&#xff…

计算机毕设Python+Vue学习管理系统(程序+LW+部署)

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

大脑皮层的分割方法

大脑皮层分割的意义 神经元之间的相互联系构成了大脑内信息传递的主要手段,这些连接构成了一个复杂的网络。可以通过现代医学成像技术,如磁共振成像MRI在宏观尺度上进行估计 网络节点的定义是构建大脑连接网络的关键步骤之一。使用体素水平的网络具有高…

vue之动态组件

切换组件案例 点击一个tab-bar,切换不同的组件显示: 这个可以通过两种不同的思路来实现: 方式一:通过v-if来判断,显示不同的组件。方式二:动态组件的方式。 (1)通过v-if来判断显示不…

高粱根质膜中K~+ -ATPase活性重组入人工脂质体/硫修饰脂质体包裹的VEGF反义寡核苷酸的相关研究

小编在这里给大家整理了高粱根质膜中K~ -ATPase活性重组入人工脂质体/硫修饰脂质体包裹的VEGF反义寡核苷酸的相关研究,一起来看! 高粱根质膜中K~ -ATPase活性重组入人工脂质体相关研究: 将高粱根质膜中K~ -ATPase活性重组入人工脂质体中 ,并…

迁移速度与计算性能兼得!天翼云DirtyLimit技术大显身手

虚拟机技术的快速发展使系统迁移变得更加灵活且多样化,其广泛应用也促使用户对虚拟机迁移速度和性能影响提出了更高要求。天翼云弹性计算虚拟化团队创新研发DirtyLimit虚拟机迁移加速技术,能够在保证读vCPU性能几乎不下降的情况下,有效缩短虚…

行业沙龙第五期丨供应商全生命周期管理赋能高质量采购

找不到好的供应商、供应商管理难,高成本效率低,货品质量难管控、交货不及时等等,导致错失了客户,太可惜了,怎么办呢?追根溯源,这些问题的源头多在于没有做好供应商管理。 供应商管理是供应链采…

[LeetCode 1760]袋子里最少数目的球

题目描述 题目链接:[LeetCode 1760]袋子里最少数目的球 给你一个整数数组 nums ,其中 nums[i] 表示第 i 个袋子里球的数目。同时给你一个整数 maxOperations 。 你可以进行如下操作至多 maxOperations 次: 选择任意一个袋子,并…

week8 正交化/human-level error/train,dev,test sets

文章目录前言一、8.1,8.2 正交化二、8.3,8.4评估指标1、 单一量化评估指标2、满足和优化指标三、8.5-8.7训练开发测试数据集1、训练开发测试数据集的分布。2、训练开发测试数据集的大小选择3、何时更改指标或者开发测试数据集四、 8.8-8.12 与人类水平相比较1、为什么选择与人类…

单商户商城系统功能拆解49—应用中心—在线客服

单商户商城系统,也称为B2C自营电商模式单店商城系统。可以快速帮助个人、机构和企业搭建自己的私域交易线上商城。 单商户商城系统完美契合私域流量变现闭环交易使用。通常拥有丰富的营销玩法,例如拼团,秒杀,砍价,包邮…

工业物联网解决方案:油井数据远程监控系统

石油行业是国民经济的重要能源支柱,是推动工业发展的原动力。随着物联网、云计算、5G无线通信等技术的发展,多种要素驱动下的生产系统逐步向着数字化转型,重要性越来越明显。油井数字化就是其中的重要一环。 油田开采区域广阔,分…

【苹果推iMessage送】摆设overrideUserInterfaceStyle属性以使该视图及其子视图具备特定的UIUserInterfaceStyle

推荐内容IMESSGAE相关 作者推荐内容iMessage苹果推软件 *** 点击即可查看作者要求内容信息作者推荐内容1.家庭推内容 *** 点击即可查看作者要求内容信息作者推荐内容2.相册推 *** 点击即可查看作者要求内容信息作者推荐内容3.日历推 *** 点击即可查看作者要求内容信息作者推荐…

攻防世界-宜兴网信办-fileinclude

题目 访问题目场景 查看网页源代码&#xff0c;发现其中存在php代码 <?php if( !ini_get(display_errors) ) { //ini_get是获取php.ini里的环境变量的值。环境变量未设置错误回显ini_set(display_errors, On);} error_reporting(E_ALL);//报告所有类型的错误 $lan $_COOK…

微信小程序遍历Echarts图表,实现遍历多个柱状图

1.wxml文件 <view stylewidth:100%;height:200rpx><ec-canvas id"mychart-dom-bar" canvas-id"mychart-bar" ec"{{ ec }}"></ec-canvas> </view>2.js文件 import * as echarts from ../../common/ec-canvas/echarts; …

rocketmq源码-consumer已消费offset更新逻辑

前言 这篇博客&#xff0c;主要记录consumer已经消费的offset是如何更新的 对于集群模式&#xff0c;offset是维护在broker中的&#xff1b;而广播模式&#xff0c;offset是存储在本地文件中&#xff08;暂时没有验证具体存储的位置&#xff0c;是根据源码推测的&#xff09;…

socket,http和websocket的区别

HTTP协议是非持久化的&#xff0c;单向的网络协议&#xff0c;在建立连接后只允许浏览器向服务器发出请求后&#xff0c;服务器才能返回相应的数据。当需要即时通讯时&#xff0c;通过轮询在特定的时间间隔&#xff08;如1秒&#xff09;&#xff0c;由浏览器向服务器发送Reque…

Delft3D水动力-富营养化模型

湖泊富营养化等水质问题严重威胁我国经济社会的发展&#xff0c;也是水环境和水生态领域科研热点之一。水环境模型是制定湖泊富营养化控制对策&#xff0c;预测湖泊水环境发展轨迹的重要工具&#xff0c;在环境影响评价、排污口论证等方面也有着广泛的应用。荷兰Delft研究所开发…

Oracle数据库:数据的仓库,永久就存储,Oracle安装教程,修改Oracle scott,sys,system用户的密码,查看表格

Oracle数据库&#xff1a;数据的仓库&#xff0c;永久就存储&#xff0c;Oracle安装教程&#xff0c;修改Oracle scott&#xff0c;sys&#xff0c;system用户的密码&#xff0c;查看表格 2022找工作是学历、能力和运气的超强结合体&#xff0c;遇到寒冬&#xff0c;大厂不招人…

Diffusion理论知识学习-预备

马尔科夫链 总体思想: 过去的所有信息都被保存在了现在的状态中&#xff0c;只使用现在状态就能预测到之后的状态&#xff0c;换句话说就是某个时刻的状态转移概率只依赖于它的前一个状态。 公式化表达:P(xt1∣xt,xt−1,...,x1,x0)P(xt1∣xt)P(x_{t1}|x_t,x_{t-1},...,x_1,x_0…

打造钢材行业智能制造新业态,B2B电商平台系统赋能企业交易全链路数字化

钢铁行业是制造业的“脊梁”&#xff0c;是工业的“粮食”&#xff0c;在我国由制造大国向制造强国挺进的过程中&#xff0c;钢铁行业由全球“老大”变“强大”至关重要&#xff0c;而数字化转型将发挥不可替代的作用&#xff0c;实施绿色制造、智能制造和精益制造&#xff0c;…