开源的HLA软件发现了OpenHLA以及openrti:
下载地址为:
https://sourceforge.net/projects/ohla/
https://github.com/onox/OpenRTI
以及一下openrti的一个测试程序:
https://github.com/chiemseesurfer/ba-hla
-----------------------------------------------------------------------------
编译openrti:
我用的windows10 x64,
压缩包目录在:
随便下载了一个cmake: 主要因为官网的太慢了,
http://dx7.lhdown.com:8081/soft/CMake_V3.18_LHdown.rar
解压后,打开vs2017的控制台:
cmake -DCMAKE_INSTALL_PREFIX=d:\OBuild\openrti\
cmake --build . --config Debug
cmake --build . --config Debug --target INSTALL
于是就生成一堆的文件,并且将有用的东西拷贝到安装目录。
-----------------------------------------------------------------------------------
编译 ba-hla
mkdir build
cd build
cmake ../source/
于是就生成了项目文件,还不能直接编译,因为没有指定头文件目录,
在打开ba-hla.sln,之后手动指定头文件目录 D:\OBuild\openrti\include\rti1516,
再指定LIB路径 :D:\OBuild\openrti\lib 就能编译通过了。
我的程序生成路径在:D:\linux_open\HLA-RTI\ba-hla-master\build\Release
----------------------------------------------------------------------------------------------------
运行测试:
将:testfom.fed testfom.xml
拷贝到:D:\linux_open\HLA-RTI\ba-hla-master\build\Release
运行服务程序:这里需要设置一个地址,不然运行时候连接不上,
简单的 测试是telnet 127.0.0.1 14321,看看能否连接
cd D:\OBuild\openrti\bin
./rtinode.exe -i 127.0.0.1
运行测试程序:
./ba-hla.exe --name myFederate --address 127.0.0.1 --fom testFom.xml
注意需要把需要的DLL拷贝到build目录,
另外,需要注意需要启动两个程序,不停的推进时间,才能收到消息,而且自己发的消息不会通知自己。