原文:https://blog.csdn.net/sillysunny/article/details/84197502
第二章 系统安装
本章介绍KY-RTI在Linux和Windows操作系统下的安装方法。
2.1 Linux安装
安装程序:RTI-1.3NGv6.tar.gz。假设当前的Linux用户名为lbq,HOME目录为/home/lbq。KY-RTI的安装目录为HOME目录,则操作步骤如下。
第1步:解压文件。
cd /home/lbq
tar xvfz RTI-1.3NGv6.tar.gz
图2.1 Linux系统中KY-RTI的目录结构
KY-RTI的整个目录结构如图2.1所示。KY-RTI采用了与DMSO RTI-1.3NGV6一致的目录结构。KY-RTI的根目录为RTI-1.3NGV6,子目录为Linux-x86_64-opt-mt。该子目录名称其实并不重要,可以任意命名。在Linux-x86_64-opt-mt目录下的apps、bin、config、doc、etc、include、lib是DMSO RTI-1.3NGV6原有的目录结构,KY-RTI保留了这些目录。对一般用户而言,可以忽略config、doc、etc这3个目录,它们只在移植旧的仿真程序时有用。
(1)apps
该目录是GNU C++示例,包括helloWorld、chat、time-tick、time-notick、ping-tick、pong-tick等示例程序和一个README文件。
目录
用例简介
helloWorld
该例是DMSO RTI-NG1.3v6自带的例子,其源代码和目录结构几乎原封不动。虽然作为DMSO的示范用例,但该例较为复杂,建议新手从其他用例入门。
chat
一个聊天程序,该例使用了交互类,没有使用tick服务。
time-tick
该例使用了对象类和时间管理服务,使用了tick服务。
time-notick
该例使用了对象类和时间管理服务,没有使用tick服务。
ping-tick
使用了tick服务的ping用例
pong-tick
使用了tick服务的pong用例
(2)apps-qt
该目录包括2个使用Qt Creator开发的Qt示例。
目录
用例简介
QtChatConsole
一个Qt聊天程序,该例使用了交互类,没有使用tick服务。
QtTimeManagement
一个使用了对象类和时间管理服务,没有使用tick服务的Qt程序。
(3)apps-java
该目录包括2个支持OpenJDK和Oracle JDK/JRE的Java示例。
目录
用例简介
chat
一个Java聊天程序,该例使用了交互类,没有使用tick服务。
time
一个使用了对象类和时间管理服务,没有使用tick服务的Java程序。
(4)jar
该目录包括kyrti.jar,用于Java开发。
(5)bin
该目录为KY-RTI服务器程序所在目录。
目录
用例简介
KY-RTI
KY-RTI服务器。
configure.rti
设置KY-RTI服务器的端口号。
MachineInfo
采集KY-RTI服务器的硬件信息。
MachineInfo.txt
MachineInfo程序运行后的结果保存文件。
HelloWorld.fed
HelloWorld程序采用的fed文件。
chat.fed
聊天程序、ping/pong程序采用的fed文件。
tracer.fed
时间管理程序采用的fed文件。
(6)include
该目录为KY-RTI的GNU C++和Qt的头文件目录,如图2.1所示,所有文件与DMSO RTI-1.3NGV6一致。
(7)lib
该目录为KY-RTI的GNU C++和Qt的库文件目录,所有文件与DMSO RTI-1.3NGV6一致。
第2步:设置环境变量。
在Linux-x86_64-opt-mt目录下的env.sh和env.csh用于设置环境变量,shell脚本请参照env.sh,csh请参照env.csh。当前操作系统的用户大都采用shell。
设置环境变量一般可以采用下列几种方法之一,但以第一种方法最为可靠,后面两种方法在有些操作系统上不起作用。环境变量设置完后,要关闭所有打开的终端并重新打开。
(1)vim $HOME/.bashrc
将环境变量添加到.bashrc文件的最后。
(2)vim /etc/profile
将环境变量添加到/etc/profile文件的最后。
(3)cp env.sh env.csh /etc/profile.d/
根据安装目录修改env.sh env.csh后将它们拷贝到/etc/profile.d/。
所添加的环境变量如图2.2所示,如果没有安装Java,则可以安装OpenJDK或者从Oracle网站下载JDK安装。
图2.2 env.sh文件内容,
第3步:确认环境变量是否生效
执行下列命令,如果不为空则设置成功。
echo $RTI_HOME
第4步:获取授权文件
KY-RTI在正常运行之前,需要进行授权。为简化用户开发,只需要授权KY-RTI服务器这一台机器,其他所有客户端机器都不需要授权。相关步骤为:
(1)获取机器信息
cd /home/lbq/RTI-1.3NGv6/Linux-x86_64-opt-mt/bin
./MachineInfo
(2)将本机新生成的MachineInfo.txt发送到邮箱:[email protected]或[email protected]
(3)将收到的授权文件改名为RTI.lic,拷贝到/etc目录,使用root用户执行下列命令。
cp RTI.lic /etc/
chmod 755 /etc/RTI.lic
第5步:启动KY-RTI服务器
cd /home/lbq/RTI-1.3NGv6/Linux-x86_64-opt-mt/bin
./KY-RTI
KY-RTI是一个控制台程序,启动界面非常简单,沿用了DMSO RTI-1.3NGV6的风格,但性能高、稳定性极好。KY-RTI使用的缺省端口号为10000,可以在configure.rti中进行配置。
图2.3 KY-RTI启动界面
2.2 Windows安装
第1步:安装软件包
在Windows系统下,用户的需求多种多样。有两种软件包和相应的安装方法。
方法一:自动安装
直接运行RTI-1.3NGv6.exe,所有环境变量由安装程序自动解决。安装程序会将KY-RTI相关的动态库文件拷贝到Windows系统目录下。
方法二:手动安装
一些用户认为安装程序将动态库文件拷贝到Windows系统目录不好控制,因此希望提供手动安装方法,动态库文件保存在KY-RTI的自身目录。
(1)选择一个目录,将RTI-1.3NGv6.zip解压到该目录。假设安装目录为:C:\KY-RTI。
(2)将C:\KY-RTI\dll目录添加到系统的PATH目录。
方法为:从桌面或资源管理器中选择“计算机”,右键“属性”,点击“高级系统设置”,点击“环境变量”,选择“系统变量”中的“Path”,点击“编辑”按钮,在后面添加“;C:\KY-RTI\dll”。注意,在Windows系统下,目录之间用‘;’分隔;在Linux系统下,则用‘:’分隔。
KY-RTI的整个目录结构如图2.4所示。KY-RTI的根目录为KY-RTI,子目录包括VC++开发所需要的include、lib、dll目录和demo-vc用例目录,include目录与DMSO RTI-1.3NGV6完全一致,如图2.5所示;子目录还包括Qt用例目录demo-qt;用于Java开发的jar和demo-java用例目录;用于VC#开发的include-cs和demo-cs用例目录,include-cs为用户提供了可供参考的VC#版本的HLA服务,因为VC#与Java语法类似,所以开发Java程序需要使用HLA服务时也可参考该目录下的文件。
图2.4 Windows系统中KY-RTI的目录结构
图2.5 Windows系统中KY-RTI的include目录
第2步:开发Java仿真应用
基于Java开发仿真应用,需要安装Java并正确设置环境变量。
(1)安装Java。Windows系统下通常是Oracle JDK,可从Oracle官网下载JDK压缩包。
假设JDK软件包解压后的目录为:C:\jdk1.8.0_171,则设置下列环境变量。
(a)JAVA_HOME=C:\jdk1.8.0_171
(b)在PATH环境变量后面添加“;${JAVA_HOME}/bin”
(2)将kyrti.jar拷贝到某一目录,并将其添加到CLASSPATH环境变量。通常可设置为:
CLASSPATH=.;C:\KY-RTI\jar\ky-rti.jar
第3步:获取授权文件
KY-RTI在正常运行之前,需要进行授权。为简化用户开发,只需要授权KY-RTI服务器这一台机器,其他所有客户端机器都不需要授权。相关步骤为:
(1)获取机器信息
运行bin目录下的MachineInfo程序,将与本机相关的信息发送到邮箱:[email protected]或[email protected]
(2)将收到的授权文件改名为RTI.lic,拷贝到C盘根目录“C:\”。
最后执行bin目录下的KY-RTI.exe程序启动服务器。KY-RTI使用的缺省端口号为10000,可以在configure.rti中进行配置。
麒麟RTI软件KY-RTI的Linux、Windows版本和源码请联系作者:[email protected]
---------------------
作者:sillysunny
来源:CSDN
原文:https://blog.csdn.net/sillysunny/article/details/84197502
版权声明:本文为博主原创文章,转载请附上博文链接!