当前位置: 首页 > news >正文

银河麒麟v10服务器版安装OpenDDS

1. OpenDDS简介


OpenDDS是OMG数据分发服务(DDS)的一种开源实现,它遵循实时系统v1.2的DDS规范(OMG Document formal/07-01-01)和实时公布/订阅互操作性通信协议v2.1的DDS-RTPS规范(OMG Document formal/2010-11-01)。OpenDDS由OCI公司设计和维护,可从http://www.opendds.org/的OpenDDS社区门户中获得帮助

2. Perl安装编译


1> 下载Perl:https://www.perl.org/get.html#unix_like
2> 解压缩

tar -xvzf perl-5.32.0.tar.gz

3> 编译安装

tar -xvzf perl-5.32.0.tar.gz
./Configure
make
sudo make install 
make clean

3. ACE+TAO下载(FULL版本)


1> 下载ACE+TAO:https://download.dre.vanderbilt.edu/
2> 解压缩:

sudo tar -zxvf ACE+TAO-6.5.10.tar.gz -C /opt

4. OpenDDS下载


1> 下载OpenDDS:http://download.ociweb.com/OpenDDS/
2> 解压缩:

sudo tar -zxvf OpenDDS-3.14.tar.gz -C /opt

5. 修改目录权限


cd /opt
sudo chmod 777 -R ACE_wrappers/
sudo chmod 777 -R OpenDDS-3.14/

6. 设置环境变量

1> 打开编辑bashrc

vim ~/.bashrc

2> 修改bashrc内容,在bashrc末尾添加

# ACE+TAO+DDS Environment
export ACE_ROOT=/opt/ACE_wrappers
export TAO_ROOT=$ACE_ROOT/TAO
export DDS_ROOT=/opt/OpenDDS-3.14
export PATH=$ACE_ROOT/bin:$DDS_ROOT/bin:$PATH
export LD_LIBRARY_PATH=$ACE_ROOT/lib:$DDS_ROOT/lib:$LD_LIBRARY_PATH

3> 使bashrc生效

source ~/.bashrc

8. 新增ace/config.h头文件


1> 新建ace/config.h头文件

vi $ACE_ROOT/ace/config.h

2> 复制以下内容到ace/config.h头文件中

#include "ace/config-linux.h"

9. 新增platform_macros.GNU文件


1> 新建platform_macros.GNU文件

vi $ACE_ROOT/include/makeinclude/platform_macros.GNU

2> 复制以下内容到platform_macros.GNU文件

include $(ACE_ROOT)/include/makeinclude/platform_linux.GNU

10. 编译


1> 编译ACE

$ cd $ACE_ROOT
$ make clean 
$ make

2> 编译TAO

$ cd $TAO_ROOT
$ make clean 
$ make

3> 编译OpenDDS

$ cd $DDS_ROOT
$ make clean 
$ make

11. 检测安装是否成功


1> 执行脚本run_test.pl

$ cd $DDS_ROOT/example/DCPS/Messenger_Imr
$ perl ./run_test.pl

2> 观察脚本运行输出(test PASSED表示环境正常)

>>> /opt/ACE_wrappers/TAO/orbsvcs/ImplRepo_Service/tao_imr_locator -o imr.ior  -orbendpoint iiop://:10098
>>> /opt/ACE_wrappers/TAO/orbsvcs/ImplRepo_Service/tao_imr_activator -o activator.ior -ORBInitRef ImplRepoService=file://imr.ior  -orbendpoint iiop://:10066
>>> /opt/OpenDDS-3.13.2/bin/DCPSInfoRepo  -NOBITS -o repo.ior  -ORBuseimr 1 -ORBInitRef ImplRepoService=file://imr.ior
>>> /opt/ACE_wrappers/bin/tao_imr -ORBInitRef ImplRepoService=file://imr.ior shutdown InfoRepo
Successfully shut down server <InfoRepo>
>>> /opt/ACE_wrappers/bin/tao_imr -ORBInitRef ImplRepoService=file://imr.ior update InfoRepo -l Fan-Lenovo -c "/opt/OpenDDS-3.13.2/bin/./DCPSInfoRepo  -NOBITS -o repo.ior  -ORBuseimr 1 -ORBInitRef ImplRepoService=file://imr.ior"
(486|140412808431424) ImR: Successfully registered <InfoRepo>
>>> /opt/ACE_wrappers/bin/tao_imr -ORBInitRef ImplRepoService=file://imr.ior list -v
Server <InfoRepo>Activator: Fan-LenovoCommand Line: /opt/OpenDDS-3.13.2/bin/./DCPSInfoRepo  -NOBITS -o repo.ior  -ORBuseimr 1 -ORBInitRef ImplRepoService=file://imr.iorWorking Directory: Activation Mode: NORMALNumber of retries: 0Not currently running/opt/OpenDDS-3.13.2/examples/DCPS/Messenger_Imr/publisher   -DCPSConfigFile pub.ini -orbendpoint iiop://:10109
/opt/OpenDDS-3.13.2/examples/DCPS/Messenger_Imr/subscriber   -DCPSConfigFile sub.ini
(488|139645218817856) Writer::start 
(488|139645109663488) Writer::svc begins.
DataReaderListenerImpl::on_subscription_matched
(488|139645109663488) 14:52:25.926322 Writer::svc starting to write.
DataReaderListenerImpl::on_liveliness_changed
Message: subject    = Reviewsubject_id = 99from       = Comic Book Guycount      = 0text       = Worst. Movie. Ever.
SampleInfo.sample_rank = 0
Message: subject    = Reviewsubject_id = 99from       = Comic Book Guycount      = 1text       = Worst. Movie. Ever.
SampleInfo.sample_rank = 0
Message: subject    = Reviewsubject_id = 99from       = Comic Book Guycount      = 2text       = Worst. Movie. Ever.
SampleInfo.sample_rank = 0
Message: subject    = Reviewsubject_id = 99from       = Comic Book Guycount      = 3text       = Worst. Movie. Ever.
SampleInfo.sample_rank = 0
Message: subject    = Reviewsubject_id = 99from       = Comic Book Guycount      = 4text       = Worst. Movie. Ever.
SampleInfo.sample_rank = 0
Message: subject    = Reviewsubject_id = 99from       = Comic Book Guycount      = 5text       = Worst. Movie. Ever.
SampleInfo.sample_rank = 0
Message: subject    = Reviewsubject_id = 99from       = Comic Book Guycount      = 6text       = Worst. Movie. Ever.
SampleInfo.sample_rank = 0
Message: subject    = Reviewsubject_id = 99from       = Comic Book Guycount      = 7text       = Worst. Movie. Ever.
SampleInfo.sample_rank = 0
Message: subject    = Reviewsubject_id = 99from       = Comic Book Guycount      = 8text       = Worst. Movie. Ever.
SampleInfo.sample_rank = 0
Message: subject    = Reviewsubject_id = 99from       = Comic Book Guycount      = 9text       = Worst. Movie. Ever.
SampleInfo.sample_rank = 0
DataReaderListenerImpl::on_liveliness_changed
DataReaderListenerImpl::on_subscription_matched
(488|139645109663488) Writer::svc finished.
(488|139645218817856) Writer::end 
>>> /opt/ACE_wrappers/bin/tao_imr -ORBInitRef ImplRepoService=file://imr.ior shutdown InfoRepo
Successfully shut down server <InfoRepo>
test PASSED.

相关文章:

银河麒麟v10服务器版安装OpenDDS

1. OpenDDS简介 OpenDDS是OMG数据分发服务(DDS)的一种开源实现&#xff0c;它遵循实时系统v1.2的DDS规范(OMG Document formal/07-01-01)和实时公布/订阅互操作性通信协议v2.1的DDS-RTPS规范(OMG Document formal/2010-11-01)。OpenDDS由OCI公司设计和维护&#xff0c;可从http…...

curl方式调用电商API接口示例 详细介绍

cURL是一个利用URL语法在命令行下工作的文件传输工具&#xff0c;1997年首次发行。它支持文件上传和下载&#xff0c;所以是综合传输工具&#xff0c;但按传统&#xff0c;习惯称cURL为下载工具。cURL还包含了用于程序开发的libcurl。 cURL支持的通信协议有FTP、FTPS、HTTP、H…...

Duboo介绍与入门

文章目录 1、Dubbo的前世今生2、Dubbo的快速入门2.1、Dubbo的基本架构2.2、Nacos2.3、管理后台2.4、入门案例2.4.1、服务提供者搭建环境代码实现配置文件 2.4.2、服务消费者搭建环境代码实现配置文件 最后说一句 1、Dubbo的前世今生 2011年10月27日&#xff0c;阿里巴巴开源了…...

人工智能中(Pytorch)框架下模型训练效果的提升方法

大家好&#xff0c;我是微学AI&#xff0c;今天给大家介绍一下人工智能中(Pytorch)框架下模型训练效果的提升方法。随着深度学习技术的快速发展&#xff0c;越来越多的应用场景需要建立复杂的、高精度的深度学习模型。为了实现这些目标&#xff0c;必须采用一系列复杂的技术来提…...

树莓派CSI摄像头使用python调用opencv库函数进行运动检测识别

目录 一、完成摄像头的调用 二、利用python调用opencv库函数对图像进行处理 2.1 图像处理大体流程 2.2 opencv调用函数的参数以及含义 2.2.1 ret, img cap.read() 读取帧图像 2.2.2 cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) 灰度图像 2.2.3 gray_diff_img cv2.absdiff(g…...

Parameters(in)、Parameters(out) and Parameters(inout)

0前言 参数类型&#xff08;Parameters&#xff09;指的是函数参数在调用时所具有的性质&#xff0c;从而对函数的调用方式产生影响。在 C 语言中&#xff0c;存在三种不同类型的函数参数&#xff1a;Parameters(in)、Parameters(out) 和 Parameters(inout) 1定义 Parameter…...

jstat命令查看jvm内存情况及GC内存变化

命令格式 jstat [Options] pid [interval] [count] 参数说明&#xff1a; Options&#xff0c;选项&#xff0c;一般使用 -gc、-gccapacity查看gc情况 pid&#xff0c;VM的进程号&#xff0c;即当前运行的java进程号 interval&#xff0c;间隔时间(按该时间频率自动刷新当前内存…...

java 图形化小工具Abstract Window Toolit :画笔Graphics,画布Canvas(),弹球小游戏

画笔Graphics Java中提供了Graphics类&#xff0c;他是一个抽象的画笔&#xff0c;可以在Canvas组件(画布)上绘制丰富多彩的几何图和位图。 Graphics常用的画图方法如下&#xff1a; drawLine(): 绘制直线drawString(): 绘制字符串drawRect(): 绘制矩形drawRoundRect(): 绘制…...

HCIA-RS实验-STP和RSTP(1)

这篇文章开始前&#xff0c;先简单说下这2个协议&#xff1b; 本文介绍了STP和RSTP的基本原理、优缺点以及应用场景。STP和RSTP都是生成树协议&#xff0c;主要作用于避免网络中的环路&#xff0c;保证数据包能够正常转发。在实际应用中&#xff0c;需要根据实际情况选择合适的…...

Leetcodes刷题之删除链表的倒数N个结点和删除链表的中间的结点

吾心信其可行&#xff0c;则移山填海之难&#xff0c;终有成功之日。 --孙中山 目录 &#x1f349;一.删除链表的倒数N个结点 &#x1f33b;1.双指针 &#x1f341;2.求链表的长度 &#x1f338;二.删除链表的中间的结点 &#x1f349;一.删除链…...

Java-数据结构-并查集<二>

一.并查集的简单介绍 二. 并查集的主要构成和实现方式 三.HashMap模板和数组模板 由于在下文的模板基本一致&#xff0c;不再每次都罗列&#xff0c;大体的模板如下&#xff0c;若有错误可以在leetcode找到对应的题目解答&#xff0c;已经附上连接。 HashMap class UnionFi…...

JSP网上教学资源共享系统(源代码+论文)

通过网上教学资源共享系统的建设&#xff0c;完成了对于操作系统课程的远程化授课。可以使学生不受时间空间的限制&#xff0c;通过网络对于这门课程进行学习。建立起了基于B/C的网络化教学系统。本网站采用当前最流行的JSP网络编程技术&#xff0c;可以实现数据的高效、动态、…...

QT C++入门学习(1) QT Creator安装和使用

Qt官方下载 Qt 官网有一个专门的资源下载网站&#xff0c;所有的开发环境和相关工具都可以从这里下载&#xff0c;具体地址是&#xff1a;http://download.qt.io/ 进入链接后&#xff0c;是一个文件目录&#xff0c;依次进入这个路径&#xff1a;archive/qt/5.12/5.12.9/qt-o…...

UE动画状态机的事件触发顺序测试

正常A状态过渡到B状态的事件顺序&#xff1a; 整个流程为&#xff1a; 调用B状态的On Become Relevant事件调用B状态的On Update事件调用A状态的Left State Event事件调用B状态的Entered State Event事件调用B状态的Start Transition Event事件调用B状态的End Transition Even…...

数学建模的搜索技巧

你真的会使用“度娘”吗&#xff1f;是不是在查找所需要的东西的时候&#xff0c;搜出来的信息价值并不是很大&#xff0c;跟着北海老师学习&#xff0c;如何更高效的使用百度去查询自己想要的&#xff0c;有用的资料&#xff01; 搜索技巧 完全匹配搜索 : 查询词的外边加上双…...

学成在线笔记+踩坑(10)——课程搜索、课程发布时同步索引库。

导航&#xff1a; 【黑马Java笔记踩坑汇总】JavaSEJavaWebSSMSpringBoot瑞吉外卖SpringCloud黑马旅游谷粒商城学成在线牛客面试题_java黑马笔记 目录 1 【检索模块】需求分析 1.1 全文检索介绍 1.2 业务流程 1.2.1、课程发布时索引库里新增一条记录 1.2.2、课程搜索 2 准…...

某应用虚拟化系统远程代码执行

漏洞简介 微步在线漏洞团队通过“X漏洞奖励计划”获取到瑞友天翼应用虚拟化系统远程代码执行漏洞情报(0day)&#xff0c;攻击者可以通过该漏洞执行任意代码&#xff0c;导致系统被攻击与控制。瑞友天翼应用虚拟化系统是基于服务器计算架构的应用虚拟化平台&#xff0c;它将用户…...

solaris-Oracle11g于linux-mysql相连

Oracle11g(solaris64sparc)mysql(linux)实验 此实验目的,实现公司ebs R12 连mysql上的短信平台.预警和提示ebs中信息, 一,环境 主机名 ip 平台 数据库 dbname ebs234 192.168.1.234 …...

大厂齐出海:字节忙种草,网易爱社交

配图来自Canva可画 随着国内移动互联网红利逐渐触顶&#xff0c;互联网市场日趋饱和&#xff0c;国内各互联网企业之间的竞争便愈发激烈起来。在此背景下&#xff0c;广阔的海外市场就成为了腾讯、阿里、字节、京东、拼多多、百度、网易、快手、B站等互联网公司关注和争夺的重…...

几个实用的正则表达式

1到100之间的正整数正则 表达式&#xff1a;^[1-9]\d?$|^100$ 解释&#xff1a; ^表示匹配字符串开始位置 [1-9]表示数字1-9中的任意一个 \d表示任意一个数字 ?表示前面一个字符或子表达式出现0或1次 $表示匹配字符串结束位置 |表示或 最终的解释为&#xff1a;匹配满…...

深入剖析AI大模型:大模型时代的 Prompt 工程全解析

今天聊的内容&#xff0c;我认为是AI开发里面非常重要的内容。它在AI开发里无处不在&#xff0c;当你对 AI 助手说 "用李白的风格写一首关于人工智能的诗"&#xff0c;或者让翻译模型 "将这段合同翻译成商务日语" 时&#xff0c;输入的这句话就是 Prompt。…...

Spring Boot 实现流式响应(兼容 2.7.x)

在实际开发中&#xff0c;我们可能会遇到一些流式数据处理的场景&#xff0c;比如接收来自上游接口的 Server-Sent Events&#xff08;SSE&#xff09; 或 流式 JSON 内容&#xff0c;并将其原样中转给前端页面或客户端。这种情况下&#xff0c;传统的 RestTemplate 缓存机制会…...

线程同步:确保多线程程序的安全与高效!

全文目录&#xff1a; 开篇语前序前言第一部分&#xff1a;线程同步的概念与问题1.1 线程同步的概念1.2 线程同步的问题1.3 线程同步的解决方案 第二部分&#xff1a;synchronized关键字的使用2.1 使用 synchronized修饰方法2.2 使用 synchronized修饰代码块 第三部分&#xff…...

聊聊 Pulsar:Producer 源码解析

一、前言 Apache Pulsar 是一个企业级的开源分布式消息传递平台&#xff0c;以其高性能、可扩展性和存储计算分离架构在消息队列和流处理领域独树一帜。在 Pulsar 的核心架构中&#xff0c;Producer&#xff08;生产者&#xff09; 是连接客户端应用与消息队列的第一步。生产者…...

条件运算符

C中的三目运算符&#xff08;也称条件运算符&#xff0c;英文&#xff1a;ternary operator&#xff09;是一种简洁的条件选择语句&#xff0c;语法如下&#xff1a; 条件表达式 ? 表达式1 : 表达式2• 如果“条件表达式”为true&#xff0c;则整个表达式的结果为“表达式1”…...

如何为服务器生成TLS证书

TLS&#xff08;Transport Layer Security&#xff09;证书是确保网络通信安全的重要手段&#xff0c;它通过加密技术保护传输的数据不被窃听和篡改。在服务器上配置TLS证书&#xff0c;可以使用户通过HTTPS协议安全地访问您的网站。本文将详细介绍如何在服务器上生成一个TLS证…...

Python爬虫(一):爬虫伪装

一、网站防爬机制概述 在当今互联网环境中&#xff0c;具有一定规模或盈利性质的网站几乎都实施了各种防爬措施。这些措施主要分为两大类&#xff1a; 身份验证机制&#xff1a;直接将未经授权的爬虫阻挡在外反爬技术体系&#xff1a;通过各种技术手段增加爬虫获取数据的难度…...

SpringTask-03.入门案例

一.入门案例 启动类&#xff1a; package com.sky;import lombok.extern.slf4j.Slf4j; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cache.annotation.EnableCach…...

React---day11

14.4 react-redux第三方库 提供connect、thunk之类的函数 以获取一个banner数据为例子 store&#xff1a; 我们在使用异步的时候理应是要使用中间件的&#xff0c;但是configureStore 已经自动集成了 redux-thunk&#xff0c;注意action里面要返回函数 import { configureS…...

NPOI操作EXCEL文件 ——CAD C# 二次开发

缺点:dll.版本容易加载错误。CAD加载插件时&#xff0c;没有加载所有类库。插件运行过程中用到某个类库&#xff0c;会从CAD的安装目录找&#xff0c;找不到就报错了。 【方案2】让CAD在加载过程中把类库加载到内存 【方案3】是发现缺少了哪个库&#xff0c;就用插件程序加载进…...