iceoryx编译和验证

一、下载源码:

git clone https://github.com/eclipse-iceoryx/iceoryx.git

二、安装编译依赖库

sudo apt install git build-essential cmake libacl1-dev libcurses5-dev pck-config

三、编译:

cmake -Bbuild -Hiceoryx_meta -DBUILD_SHARED_LIBS=ON -DEXAMPLES=ON -DINTROSPECTION=ON

cmake --build build -j8

四、安装:

sudo cmake --build build --target install

sudo ldconfig

五、测试验证:

1. 基本的收发功能,需要3个终端分别运行:router,subscriber,publisher

(1)iox-roudi

2026-02-23 16:01:20.229 Info : No config file provided and also not found at '/etc/iceoryx/roudi_config.toml'. Falling back to built-in config.

2026-02-23 16:01:20.340 Info : Resource prefix: iox1

2026-02-23 16:01:20.340 Info : Domain ID: 0

2026-02-23 16:01:20.340 Info : RouDi is ready for clients

(2)iceoryx/build/iceoryx_examples/icedelivery:iox-cpp-publisher

2026-02-23 16:11:31.542 Info : Domain ID: 0

iox-cpp-publisher sent values: 90, 145, 234, 1, 378

iox-cpp-publisher sent values: 91, 146, 235, 2, 379

iox-cpp-publisher sent values: 92, 147, 236, 3, 380

iox-cpp-publisher sent values: 93, 148, 237, 4, 381

(3)iceoryx/build/iceoryx_examples/icedelivery:iox-cpp-subscriber

2026-02-23 16:10:59.373 Info : Domain ID: 0

iox-cpp-subscriber got value: 106

iox-cpp-subscriber got value: 161

iox-cpp-subscriber got value: 250

iox-cpp-subscriber got value: 17

iox-cpp-subscriber got value: 394

iox-cpp-subscriber got value: 107

iox-cpp-subscriber got value: 162

iox-cpp-subscriber got value: 251

iox-cpp-subscriber got value: 18

iox-cpp-subscriber got value: 395

iox-cpp-subscriber got value: 108

iox-cpp-subscriber got value: 163

2. 测试收发延迟

(1)iox-roudi

(2)iceoryx/build/iceoryx_examples/iceperf:iceperf-bench-follower

2026-02-23 16:13:55.792 Info : Domain ID: 0

Waiting for PerfSettings from leader application!

****** ICEORYX ********

Waiting for: subscription, subscriber success

Waiting for: unsubscribe finished

(3)iceoryx/build/iceoryx_examples/iceperf:iceperf-bench-leader -n 100000 -t iceoryx-cpp-api

2026-02-23 16:13:37.972 Warn : IPC channel still there, doing an unlink of 'iox1_0_u_iceperf-bench-leader'

2026-02-23 16:13:37.975 Info : Domain ID: 0

****** ICEORYX ********

Waiting for: subscription, subscriber success

Measurement for: 16 B, 32 B, 64 B, 128 B, 256 B, 512 B, 1 kB, 2 kB, 4 kB, 8 kB, 16 kB, 32 kB, 64 kB, 128 kB, 256 kB, 512 kB, 1 MB, 2 MB, 4 MB

Waiting for: unsubscribe finished

Measurement Result

100000 round trips for each payload.

Payload Size Average Latency µs
16 B 1.2
32 B 1.2
64 B 1.2
128 B 1.2
256 B 1.2
512 B 1.2
1 kB 1.2
2 kB 1.2
4 kB 1.2
8 kB 1.2
16 kB 1.2
32 kB 1.2
64 kB 1.2
128 kB 1.2
256 kB 1.2
512 kB 1.2
1 MB 1.2
2 MB 1.2
4 MB 1.2

Finished!

相关推荐
小小龙学IT2 小时前
Go 语言 cgo 与 C/C++ 互操作深度解析:从 fwlib 直连到工业数采网关实战系列
c语言·c++·golang
KING-WU5122 小时前
Linux 工具之Make 与 Makefile
java·linux·服务器
Lsetea3 小时前
OpenSSL报certificate is not yet valid:error 9与notBefore时间排查
linux·运维·https·ssl证书·openssl
魔法阵维护师3 小时前
Linux 命令行入门踩坑记录:从 VMware 装系统到文件管理
linux·运维·服务器
Apipi*3 小时前
30天速通Linux 第七章进程间通信
linux·运维·服务器
emo_2b3 小时前
Pycharm配置conda解释器时遇到的问题及解决方法
linux·pycharm·conda
程序员老陆3 小时前
C++ 多线程通信方式全景:从共享内存到结构化协调
开发语言·c++
某不知名網友4 小时前
ROS2 核心通信:话题发布与订阅详解
开发语言·c++
C++ 老炮儿的技术栈4 小时前
char (*csConnectName)[256]; 和 char csConnectName [256] 有什么区别
java·c语言·开发语言·c++·人工智能·算法·c
人生百态,人生如梦4 小时前
Ubuntu在低版本下使用ccswitch+claudecode(CCSwitch+Docker+Claude)连调教程
linux·ubuntu·docker·claudecode·ccswitch