构建嵌入式版本的 ACE TAO 6.5.3

introduction

之前曾在ubuntu 18.04中构建嵌入式版本的ACE TAO 6.5.3. 在之后使用过程中发现, 当升级系统工具链后, ACE TAO 库不兼容本地环境的系统库.具体表现形式为ACE TAO中示例程序执行时将出现segment fault. 经过在本地重新构建ACE TAO 6.5.3得出新的ACE TAO动态链接库,才能使ACE TAO示例程序正常使用.

本文描述内容包括

  • 构建嵌入式版本ACE TAO的方法
  • ACE TAO 测例的执行

系统环境

Ubuntu 18.04.2
gcc version 7.4.0
glibc version 2.27

构建

解压源代码 ace tao 6.5.3

tar zxvf ACE+TAO-6.5.3.tar.gz

设置编译ACE TAO时需要的环境变量

export ACE_ROOT=${pwd}/ACE_wrappers
export TAO_ROOT=${ACE_ROOT}/TAO
export CIAO_ROOT=${pwd}/CIAO
export DANCE_ROOT=${pwd}/DANCE
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${$ACE_ROOT}/ace:${ACE_ROOT}/lib
export PATH=$PATH:$ACE_ROOT/bin

修改若干配置文件,设置以嵌入式为目标编译ACE TAO

cd $ACE_ROOT
echo '#include "ace/config-linux.h"' > ${ACE_ROOT}/ace/config.h
echo 'include $(ACE_ROOT)/include/makeinclude/platform_linux.GNU' > ${ACE_ROOT}/include/makeinclude/platform_macros.GNU
echo 'INSTALL_PREFIX=$(ACE_ROOT)/INSTALL/' >> ${ACE_ROOT}/include/makeinclude/platform_macros.GNU
echo 'corba_e_compact=1' > ${ACE_ROOT}/bin/MakeProjectCreator/config/default.features

编译ACE TAO

mkdir INSTALL
bin/mwc.pl -type gnuace
make -j

编译过程中将编译ACE TAO动态链接库,测试文件,ACE TAO 示例等.

运行示例

进入示例所在目录

cd ${ACE_ROOT}/TAO/examples/Simple/echo/ 
./server -o ior_file 
./client -o ior_file

在执行client的交互式终端中输入字符串.若返回相同字符串,则测试成功.

你可能感兴趣的:(工具)