Ubuntu18.04安装OpenDDS
参考链接
下载ACE+TAO与OpenDDS
ACE+TAO下载地址:打开后选择ACE+TAO.tar.gz的Full版下载即可。
OpenDDS下载地址:打开后选择OpenDDS-3.16.tar.gz下载即可。
解压安装ACE+TAO与OpenDDS
将ACE+TAO与OpenDDS解压至/opt目录下:
sudo tar -zxvf ACE+TAO-7.0.1.tar.gz -C /opt sudo tar -zxvf OpenDDS-3.16.tar.gz -C /opt
解压完成后,会在/opt目录下生成 ACE_wrappers 与 OpenDDS-3.16 两个文件夹,修改其权限:
sudo chmod 777 -R ACE_wrappers/ sudo chmod 777 -R OpenDDS-3.16/
在/etc/profile文件尾添加如下环境变量,重启生效
# ACE+TAO+DDS export ACE_ROOT=/opt/ACE_wrappers export TAO_ROOT=$ACE_ROOT/TAO export DDS_ROOT=/opt/OpenDDS-3.16 export PATH=$ACE_ROOT/bin:$DDS_ROOT/bin:$PATH export LD_LIBRARY_PATH=$ACE_ROOT/lib:$DDS_ROOT/lib:$LD_LIBRARY_PATH
bash与zsh
若采用bash,则按照上述环境配置一切正常,继续编译即可,若采用zsh,需在/etc/zsh/zshenv文件末尾添加上述环境配置。(zsh不适用/etc/profile文件,而是使用/etc/zsh/下的zshenv、zprofile、zshrc、zlogin文件,并以此顺序加载)
编译
设置config.h
在$ACE_ROOT/ace/下新建config.h并将下列内容写入文件:#include "ace/config-linux.h"
设置Platform_macros.GNU
在$ACE_ROOT/include/makeinclude/下新建platform_macros.GNU并将下列内容写入:include $(ACE_ROOT)/include/makeinclude/platform_linux.GNU
编译
编译顺序为ACE -> TAO -> DDSACE编译
cd $ACE_ROOT make clean make -j8 # j后面的数字根据你电脑的核数来定,不要跑满
TAO编译
cd $TAO_ROOT make clean make -j8
DDS编译
cd $DDS_ROOT ./configure make clean make -j8
测试
编译完成后,运行测试脚本测试OpenDDS环境是否搭建成功。
cd $DDS_ROOT/example/DCPS/Messenger_Imr perl ./run_test.pl
运行结果显示 test PASSED,测试成功