-04 ftp://ftp.ing.umu.se/linux/gentoo/distfiles/ACE-5.5.tar.bz2
2006-03-04 ftp://gentoo.inode.at/source/distfiles/ACE-5.5.tar.bz2
2006-03-04 ftp://ftp.uvsq.fr/pub/gentoo/gentoo/distfiles/ACE-5.5.tar.bz2
2006-03-05 ftp://ftp.tw.freebsd.org/pub/ports/distfiles/ACE-5.5.tar.bz2
2006-03-04 ftp://128.118.2.96/pub/.mirrors/2/ftp.ibiblio.org/pub/linux/distributions/gentoo/distfiles/ACE-5.5.tar.bz2
2006-03-04 ftp://ftp.bm.kernel.org/pub/mirrors/gentoo/source/distfiles/ACE-5.5.tar.bz2
2006-03-04 ftp://ftp.cerias.purdue.edu/pub/os/gentoo/distfiles/ACE-5.5.tar.bz2
2006-03-04 ftp://ftp.informatik.rwth-aachen.de/pub/comp/Linux/gentoo/distfiles/ACE-5.5.tar.bz2
2006-03-04 ftp://ftp.ascon.ru/gentoo-distfiles/distfiles/ACE-5.5.tar.bz2
2006-03-04 ftp://ftp.filearena.net/mnt3/gentoo/distfiles/ACE-5.5.tar.bz2
2006-03-04 ftp://ftp.ussg.iu.edu/linux/gentoo/distfiles/ACE-5.5.tar.bz2
方法一:
1. 解开ACE-install.sh文件
tar –zxvf ACE-5.5.tar.gz ACE_wrappers/ACE-install.sh
2. 根据文件中注释line 53~62:编译变量的实际路径和配置文件编辑ACE-install.sh:
MY_ACEDIR=/home/mabel/ACE
MY_ACE_CONFIG=config-linux.h
MY_ACE_GNU_MACROS=platform_linux.GNU
3. 执行ACE-install.sh,如果ACE-install.sh没有执行权限,则必须使用chmod 777 ACE-install.sh来赋予权限
./ACE-install.sh
方法二: (推荐用)
1. 设置ACE_ROOT环境变量:(可以在/etc/profile中设置,也可以在个人home目录下的.bash_profile里设置)
ACE_ROOT = /home/redwood/software/ACE_wrappers
export ACE_ROOT
2. 针对不同版本创建两个文件链接:
在$ACE_ROOT/ace目录下:
ln -s config-linux.h config.h
在$ACE_ROOT/include/makeinclude/目录下:
ln -s platform_linux.GNU platform_macros.GNU
3. 设置LD_LIBRARY_PATH环境变量:
LD_LIBRARY_PATH = $ACE_ROOT/lib:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH
(补允:注意是$ACE_ROOT/lib而不是$ACE_ROOT/ace,很多网站上都是写后者,其实是不对的)
4. 运行配置脚本 ./configure [options]
常用的选项有: CXXFLAGS=-O3 --disable-debug --disable-ace-examples --disable-ace-tests --without-tao
补充:如果要接定安装路径(默认安装在/usr/local),可以再加上参数:--prefix [安装路径]
5. 编译#>make
6. 安装 #> make install(补充:如果执行了安装,原来的$ACE_ROOT可以改为安装后的路径)
在ACE5.5中使用Epoll:
ACE_wrappers/ace/config-linux.h,增加一行:#define ACE_HAS_EVENT_POLL
在应用程序的makefile中加入 -DACE_HAS_EVENT_POLL,重新make应用程序。OK,打完收工。(修正:只需要在ACE_wrappers/ace/config-linux.h,增加一行:#define ACE_HAS_EVENT_POLL就行了,没必要在每个应用程序中都加入-DACE_HAS_EVENT_POLL)