1. 环境:
Linux: Ubuntu 12.04LTS
Perl: V5.26
Make: GNU Make V3.81
gcc: V4.6.3
2. Perl下载编译
Perl下载地址:http://www.perl.org/get.html#unix_like
Perl安装包名为:perl-5.26.1.tar.gz
2.1 解压编译
<span style="color:#000000"><code>tar -xvzf perl<span style="color:#006666">-5.26</span><span style="color:#006666">.1</span>.tar.gz
cd perl<span style="color:#006666">-5.26</span><span style="color:#006666">.1</span>
./Configure
<span style="color:#4f4f4f">make</span>
<span style="color:#4f4f4f">make</span> install
<span style="color:#4f4f4f">make</span> clean</code></span>
- 1
- 2
- 3
- 4
- 5
- 6
需要注意的是 Perl 文件夹中 Configure 中 C 为大写。
3. ACE+TAO与OpenDDS 下载编译
3.1 下载解压
ACE+TAO下载地址 http://download.dre.vanderbilt.edu/
OpenDDS下载地址 http://download.ociweb.com/OpenDDS/
<span style="color:#000000"><code>tar -xvzf ACE+TAO-<span style="color:#006666">6.4</span><span style="color:#006666">.7</span><span style="color:#009900">.tar</span><span style="color:#009900">.gz</span>
tar -xvzf OpenDDS-<span style="color:#006666">3.12</span><span style="color:#009900">.tar</span><span style="color:#009900">.gz</span></code></span>
- 1
- 2
两点需要注意:
- ACE+TAO 下载选择
FULL
版本,因为FULL
版本包含所有GNU make
预生成makefile
的源代码,而Sources Only
版本则仅包含源代码,您还必须使用MPC
生成自己的makefile
。 - 应该下载
*.tar.gz
格式的文件,因为这是 Linux 的版本。而*.zip
格式为 Windows 版本。
3.2 设置相关环境变量
<span style="color:#000000"><code><span style="color:#4f4f4f">$ </span>cd ~
<span style="color:#4f4f4f">$ </span>ls -al <span style="color:#880000">#会看到有.bashrc文件</span>
<span style="color:#4f4f4f">$ </span>gedit .bashrc</code></span>
- 1
- 2
- 3
在.bashrc
末尾添加如下的环境变量:
<span style="color:#000000"><code class="language-shell"><span style="color:#000088">export</span> ACE_ROOT=/home/workspace/opendds/ACE_wrappers
<span style="color:#000088">export</span> TAO_ROOT=<span style="color:#009900">$ACE_ROOT</span>/TAO
<span style="color:#000088">export</span> DDS_ROOT=/home/workspace/opendds/DDS
<span style="color:#000088">export</span> PATH=<span style="color:#009900">$ACE_ROOT</span>/bin:<span style="color:#009900">$DDS_ROOT</span>/bin:<span style="color:#009900">$PATH</span>
<span style="color:#000088">export</span> LD_LIBRARY_PATH=<span style="color:#009900">$ACE_ROOT</span>/lib:<span style="color:#009900">$DDS_ROOT</span>/lib:<span style="color:#009900">$LD_LIBRARY_PATH</span></code></span>
- 1
- 2
- 3
- 4
- 5
注意实际的安装目录与以上环境变量的关系,根据实际的安装路径上述设置可作适当调整。
3.3 设置/新建 config.h
新建 $ACE_ROOT/ace/config.h
, 内容如下:
<span style="color:#000000"><code>#include <span style="color:#009900">"ace/config-linux.h"</span></code></span>
- 1
3.4 设置/新建 platform_macros.GNU
新建$ACE_ROOT/include/makeinclude/platform_macros.GNU
, 内容如下:
<span style="color:#000000"><code><span style="color:#000088">include</span> <span style="color:#4f4f4f">$(</span><span style="color:#009900">ACE_ROOT</span>)/<span style="color:#000088">include</span>/makeinclude/platform_linux.<span style="color:#009900">GNU</span></code></span>
- 1
3.5 编译
配置完以上文件之后,可以进行编译:
编译次序为: ACE -> TAO -> OpenDDS
3.5.1 ACE编译
<span style="color:#000000"><code><span style="color:#4f4f4f">cd</span> <span style="color:#009900">$ACE_ROOT</span>
make clean
make</code></span>
- 1
- 2
- 3
3.5.2 TAO编译
<span style="color:#000000"><code><span style="color:#4f4f4f">cd</span> <span style="color:#009900">$TAO_ROOT</span>
make clean
make</code></span>
- 1
- 2
- 3
3.5.3 OpenDDS编译
<span style="color:#000000"><code><span style="color:#4f4f4f">cd</span> <span style="color:#009900">$DDS_ROOT</span>
make clean
make</code></span>
- 1
- 2
- 3
OpenDDS编译完成之后,所有的编译过程结束。
3.6 运行测试脚本
为了测试OpenDDS的环境搭建是否成功,为我们提供了一个自动测试脚本。
<span style="color:#000000"><code><span style="color:#4f4f4f">$ </span>cd <span style="color:#4f4f4f">$DDS_ROOT</span>/example/<span style="color:#009900">DCPS</span>/<span style="color:#009900">Messenger_Imr</span>
<span style="color:#4f4f4f">$ </span>run_test.pl</code></span>
- 1
- 2
显示 test PASSED
,测试成功,表示OpenDDS环境已经搭建成功。
4. Source only源代码版本编译
- 下载ACE+TAO源代码版本,解压
- 设置环境变量
$ACE_ROOT
和$TAO_ROOT
- 创建
config.h
和platform_macros.GUN
- 使用MPC 工具编译,命令如下:
<span style="color:#000000"><code>mwc.pl ACE.mwc –<span style="color:#000088">type</span> <span style="color:#4f4f4f">gnuace</span>
mwc.pl TAO_ACE.mwc –<span style="color:#000088">type</span> <span style="color:#4f4f4f">gnuace</span></code></span>
- 1
- 2
5. 参考来源
http://blog.sina.com.cn/s/blog_6f83fdb40101i62i.html
https://www.cnblogs.com/joeywang/p/3719815.html
http://www.perl.org/get.html