首页 > 代码库 > 64位CentOS 6.5编译配置ACE 6.1.0(6.2.0)
64位CentOS 6.5编译配置ACE 6.1.0(6.2.0)
系统:CentOS 6.5 64位
ACE版本:6.1.0
假定压缩文件目录为:/usr/local/
步骤1:
解压下载好的ACE-6.1.0.tar.gz
# tar zxvf ACE-6.1.0.tar.gz
出现一个名为:ACE_wrappers的文件夹
步骤2:定义环境变量:
修改/etc/profile 或者 /etc/bashrc
# vi /etc/profile
加入以下两行:
ACE_ROOT=/usr/local/ACE_wrappers;export ACE_ROOT
LD_LIBRARY_PATH=$ACE_ROOT/ace;export LD_LIBRARY_PATH
#这个路径是最后链接的路径,如果编译输出不修改路径,则为上面的路径,如果定制路径,则要修改为定制的路径
步骤3:修改ACE_wrappers/include/makeinclude下面的platform_linux.GNU,
vi platform_linux.GNU
找到
ifeq ($(buildbits),32)
FLAGS_C_CC += -m32
LDFLAGS += -m32
endif
ifeq ($(buildbits),64)
FLAGS_C_CC += -m64
LDFLAGS += -m64
endif
修改为:
ifeq ($(buildbits),32)
FLAGS_C_CC += -m32
LDFLAGS += -m32
endif
ifeq ($(buildbits),64)
FLAGS_C_CC += -m64
FLAGS_C_CC += -fPIC
LDFLAGS += -m64
endif
这里的修改是为了解决64位系统编译的问题,如果系统为32位,不修改应该也可以
步骤4:在ACE_wrappers/include/makeinclude下面创建文件platform_macros.GNU,
vi platform_macros.GNU
添加如下代码
include $(ACE_ROOT)/include/makeinclude/platform_linux.GNU //不是#include
以下两项是可选的添加的:
1.INSTALL_PREFIX=/usr/local/ace_install
该项是制定编译文件输出的,这里如果要添加该项,则需要修改前面的环境变量:LD_LIBRARY_PATH=$ACE_ROOT/ace;export LD_LIBRARY_PATH ,如果添加,则修改为
LD_LIBRARY_PATH=/usr/local/ace_install/ace;export LD_LIBRARY_PATH
2.static_libs=1
该项定义了在生成编译文件的时候,同时生成静态库,不添加则不生成静态库
步骤五:测试例子
#include"ace/Log_Msg.h"
#include"ace/OS_main.h"
using namespace std;
int ACE_TMAIN(int arg,ACE_TCHAR *argv[])
{
ACE_DEBUG((LM_DEBUG,ACE_TEXT("Hello ACE")));
return 0;
}
编译并连接:
gcc -o hello hello.cpp -I /usr/local/ACE_wrappers/ -L /usr/local/ACE_wrappers/ace/ -lACE -lrt -lpthread
基本没什么问题的情况下就可以看书学习ACE了…………