欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 运维知识 > linux >内容正文

linux

linux编译ace,Linux下编译ACE

发布时间:2024/4/14 linux 41 豆豆
生活随笔 收集整理的这篇文章主要介绍了 linux编译ace,Linux下编译ACE 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

操作系统:Centos4.7

ACE版本:ACE-6.0.2

安装过程:

下载ACE-6.0.2.tar.gz。

下载完成后将其解压tar -zxvf ACE-6.0.2.tar.gz用户登陆目录。我的解压路径为/root/ACE_wrappers。

设置环境变量,编辑/etc/profile,加入以下内容:

ACE_ROOT=/root/ACE_wrappers

export ACE_ROOT

LD_LIBRARY_PATH=$ACE_ROOT/ace:$LD_LIBRARY_PATH

export LD_LIBRARY_PATH

保存后别忘了输入:source /etc/profile

编译ACE:

1.选择平台配置文件,本系统应该选择config-linux.h,在$ACE_ROOT/ace 目录下新建config.h文件,在config.h中加入

#define ACE_HAS_STANDARD_CPP_LIBRARY 1

#define ACE_HAS_EVENT_POLL 1

#include "config-linux.h"

2.选择平台宏定义文件,本系统应该选择platform_linux.GNU,在$ACE_ROOT/include/makeinclude 目录下新建platform_macros.GNU,在platform_macros.GNU中加入一行如 下:include $(ACE_ROOT)/include/makeinclude/platform_linux.GNU3.进入$ACE_ROOT/ace/, 输入编译命令:make -f GNUmakefile, 编译生成libACE.so.6.0.2,libACE.so

Linux使用ACE编程:

我写个简单的Hello World!的程序

1.新建个hello.cpp的文件:

#include "ace/Log_Msg.h"

int ACE_TMAIN(int argc, char argv[])

{

ACE_DEBUG((LM_DEBUG, ACE_TEXT("Hello World!\n")));

return 0;

}

2.创建hello.mpc文件:

project(hello) : aceexe{

exename = hello

Source_Files{

hello.cpp

}

Header_Files{

}

}

3.生成Makefile:

$ACE_ROOT/bin/mpc.pl -type make hello.mpc

4.生成可执行文件:make -f Makefile.hello

5.运行:./hello

6.输出: Hello World!

//====================================================================

后记:也可以使用automake编译ace,例如

./configure --enable-static --enable-threads --disable-ssl --disable-acexml

make static_libs=1 versioned_so=0 optimize=1

make install

默认ace的库和头文件安装在/usr/local/lib/和/usr/local/include/ace/目录注意:如果需要支持epoll,请在ace/config.h中加入 #define ACE_HAS_EVENT_POLL 1

下面3个在WIN32下定义:

//ACE的NOTIFY对列使用内存QUEUE机制,而不使用传统的PIPE

#define ACE_HAS_REACTOR_NOTIFICATION_QUEUE 1

//CDR的字节对齐问题

#define ACE_CDR_IGNORE_ALIGNMENT 1

//CDR的字节对齐问题

#define ACE_LACKS_CDR_ALIGNMENT 1

总结

以上是生活随笔为你收集整理的linux编译ace,Linux下编译ACE的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。