linux编译ace tao,ACE_TAO的编译

ACE TAO在solaris下的编译!

1. 编译需要sun studio 11来完成12好像会报告很多错误.

2. 编译源文件需要为unix格式(否则有很多宏编译失败),而zip解压后其中是dos格式的文件!

3. 在ace/Array_Map.h的124行会检查是否为SUN CC编译器,但是由于该版本比较高.导致__SUNPRO_CC的值比较大,导致该行编译宏检查失败.

解决方案:

1. 下载11

2. 在$ACE_ROOT的父目录中运行 find ./ACE_wrappers -type f >file_list得到所有文本文件的列表.

然后编写小脚本进行格式转换(d2u)

#/usr/bin/ksh

for i in "$@"

do

dos2unix $i >a

mv a $i

done

3. cat  file_list | xargs d2u

4. 在Array_Map.h的124行,只保留对__SUNPRO_CC的检查,删除值大小和另外一个宏的检测!

5. 创建config.h 用命令 echo '#include 'ace/config-sunos5.10.h' > $ACE_ROOT/ace/config.h

6. 创建platform_macros.GNU 用命令: echo 'include $(ACE_ROOT)/include/makeinclude/platform_sunos5_sunc++.GNU' > $(ACE_ROOT)/include/makeinclude/platform_macros.GNU

7. 进入$ACE_ROOT/ace 运行make

8. 进入$ACE_ROOT/TAO 目录运行make

9. 进入apps/gperf 运行make. 如果没有此行.好像实际编译程序会出错!

在window XP cygwin下编译:

1. 需要在config.h中添加:

#define ACE_HAS_4_4BSD_SENDMSG_RECVMSG

2. 编译中出现有些函数找不到的情况! 可以试着找到源码的位置! 然后从zip文件重新解压该文件!(不知道是不是rar的bug, 文件会解丢了)

$ACE_ROOT/TAO/TAO_IDL/fe/fe_lookup.cpp 在window下和solaris下都曾经出过错! 很奇怪!

阅读(1477) | 评论(0) | 转发(1) |

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值