ACE安装说明.docx

上传人:b****5 文档编号:6194665 上传时间:2023-01-04 格式:DOCX 页数:12 大小:24.22KB
下载 相关 举报
ACE安装说明.docx_第1页
第1页 / 共12页
ACE安装说明.docx_第2页
第2页 / 共12页
ACE安装说明.docx_第3页
第3页 / 共12页
ACE安装说明.docx_第4页
第4页 / 共12页
ACE安装说明.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

ACE安装说明.docx

《ACE安装说明.docx》由会员分享,可在线阅读,更多相关《ACE安装说明.docx(12页珍藏版)》请在冰豆网上搜索。

ACE安装说明.docx

ACE安装说明

第一章:

Windows平台2

第二章:

Linux平台5

第三章:

AIX(IBM)平台8

第四章:

SUN平台8

第五章:

HP-UNIX平台9

第一章:

Windows平台

1、把程序包放在D盘根目录下面:

目录就是这个样子D:

\ACE_wrappers。

2、在目录D:

\ACE_wrappers/ace/下面建立一个config.h文件(一般情况下,这个文件不存在,如果已经存在,则只需要修改内容)。

3、在config.h中,增加如下一行内容:

#include“ace/config-win32.h”

这个头文件实际上包含了windows平台的各种编译器版本。

4、打开工程D:

\ACE_wrappers/ace/ace.dsw,直接编译,生成debug版本的dll,放在

D:

\ACE_wrappers/lib下面。

5、如果你是Win9*/ME版本,需要在3的内容前面增加一行:

#defineACE_HAS_WINNT40

6、如果你想用VC自带的C++标准库,需要增加一行:

#defineACE_HAS_STANDARD_CPP_LIBRARY1

7、默认为debug版本的dll,如果想要编译静态库,需要增加一行:

#defineACE_AS_STATIC_LIBS1

注:

虽然ACE可以和MFC等混合使用,但是由于ACE主要针对跨平台使用,和MFC搭配还有一些缺陷,有些甚至是目前无法解决的,请谨慎使用(针对V5.4版本及低级版本)。

另外转一个网络文章:

转贴网络文摘

======================================================================

C++网络开发包ACE环境的配置与调试

 

ACE是个很有用的开放源代码的C++网络编程开发包,利用它比直接用API更有利于代码的健壮性,可移植性,并相对简单。

估计大家刚接触ACE时,都有一定难度,说不定就半途放弃了,这是我学ACE两天中的总结,基本上不成文,但我想研究到ACE的你一定会明白下文的意思。

我的系统环境是:

Win2kpro(sp4)、VC6.0(sp5)

过一阵,我的主页上要开论坛,并设VC专区,欢迎大家上去交流

一、ACE官方主页:

http:

//www.cs.wustl.edu/~schmidt/ACE.html

   下载地址:

http:

//deuce.doc.wustl.edu/Download.html   

   我下载的是LatestBetaKit中的ACE.zip(LatestRelease中的压缩包好像有问题,我有WinRAR3.30解压缩报错)

二、解压缩后放在D盘

   D:

\ACE_wrappers

三、在D:

\ACE_wrappers\ace目录下新建文件config.h加入一行

   #include"ace/config-win32.h"

   

四、编译:

用VC6.0打开D:

\ACE_wrappers\ace\ace.dsw

   左侧显示   ACEDLLclasses

              ACELIBclasses

   或1、从菜单上选择“编译”,“放置可远行配置”,选择你需要的工程配置

       “编译”,“重建全部”(或任一,如ACEDLL-Win32MFCDebug)

       此过程可能持续半小时至一个小时不等

   或2、从菜单上选择“编译”,“批构建”,选择你需要的工程配置

       此过程可能持续二至四个钟头

       

   产生的.lib文件位于D:

\ACE_wrappers\ace\下,

   产生的.dll文件位于D:

\ACE_wrappers\bin\下

   

   

   同样打开ace_static.dsw

   编译

   ACEs.lib

   ACEsd.lib

   ACE_RMCasts.lib

   ACE_RMCastsd.lib

   TMCasts.lib

   TMCastsd.lib

   ACE生成的dll和lib文件的命名规则:

(d=debug,s=static)

   debug-aced.lib、debug+static-acesd.lib、release-ace.lib、release+static-aces.lib

五、样例程序的编译

   用VC打开D:

\ACE_wrappers\tests\tests.dsw

   “编译”,“批构建”

   

六、自写程序的工程配置   

   中篇:

ACE程序员教程.pdf中的样例程序:

网址:

http:

//www.cs.wustl.edu/~schmidt/ACE_wrappers/docs/tutorials/guide-tutorials.html

   

   将网页上的原代码复制到一新建文件,并命名为server.cpp

   用VC打开,编译,重建全部,弹出对话框,“Thisbuildcommandrequire...“,点”是“

   

   会出现以下错误   

   如果有“Cannotopenincludefile:

'ace/SOCK_Acceptor.h':

Nosuchfileordirectory”

   工程-设置-C/C++:

Preprocessor,附加包含路径:

D:

/ACE_wrappers

   

   如果有“Youmustlinkagainstmulti-threadedlibrarieswhenusingACE(checkyourprojectsettings)”

   工程-设置-C/C++:

CodeGeneration-Userun-timelibrary:

DebugMultithreadedDll

   

   如果有“errorC2065:

'ACE_ERROR':

undeclaredidentifier”

           errorC2065:

'ACE_DEBUG':

undeclaredidentifier

   #include"ace/Log_Msg.h"

   errorC4716:

'ace_main_i':

mustreturnavalue

       在main中加入

           return0;

   

   “errorLNK2001:

unresolvedexternalsymbol"__declspec(dllimport)int__cdecl”

   工程-设置-Link-Input:

对象/库模块:

添加aced.lib                        附加库路径:

D:

\ACE_wrappers\ace

                       

   

                       

   编译client中遇到的问题

   1、errorC2039:

'sprintf':

isnotamemberof'ACE_OS'       

       #include"ace/OS_NS_stdio.h"

       

   2、errorC2039:

'strlen':

isnotamemberof'ACE_OS'   

       #include"ace/OS_NS_string.h"

   3、errorC2059:

syntaxerror:

'?

'

       错误在这一句:

 ACE_DEBUG((LM_DEBUG,?

UsageegX\n?

));

       将?

改为"

       

   4、无法找到动态链接库aced.dll于指定的路径

       为系统变量PATH加上D:

\ACE_wrappers\bin       

       

   静态包含:

      工程-设置-C/C++-预处理程序定义中加入,ACE_AS_STATIC_LIBS      

      

例1server编译后生成

   server.exe16K serverd.exe97K    servers.exe124Kserversd.exe669K

   (servers.exe较适合发布)

   

例2client编译后生成

   client.exe16K clientd.exe97K    clients.exe124Kclientsd.exe669K

  (clients.exe较适合发布)

   

   测试clients127.0.0.11919

       servers1919 

提醒大家要注意一点

一定在使用任何ACE代码前调用ACE:

:

init(),使用完之后调用ACE:

:

fini()。

如果忘记写编译器是不会提醒你的。

也就是会得到ACE本来要解决的——运行时错误

第二章:

Linux平台

摘自:

张弛(zhangchi@)

本文详细描述了在Linux操作系统上安装和配置“自适应通信环境(ACE)”的过程和注意事项。

文中的描述基于RedHatLinux9操作系统和ACE5.4版

(1)准备工作:

1、确保你的Linux操作系统的开发环境(gcc、make……)是完整且可用的。

2、在安装ACE的过程中,可能需要root权限,因此确保你拥有root帐户的密码。

3、对于典型的Redhat9系统,autoconf程序的版本可能过低,你需要首先升级它。

  升级的步骤如下:

1、在控制台中输入autoconf-V,查看你的autoconf程序的版本。

2、如果低于2.57g,你需要到http:

//www.gnu.org/software/autoconf/

去下载最新版本的autoconf程序,目前autoconf程序的版本是2.59。

3、根据tarball中的安装说明,编译并安装升级autoconf程序。

(2)开始安装:

经过上面的准备工作,现在你已经具备了安装ACE的条件。

下面开始正式的安装工作。

1、首先确定ACE的安装路径,并建立相应的目录。

     这里,我们把ACE安装在/home/zhc/ace/的目录下,先执行mkdir/home/zhc/ace

2、然后将获得的ACE源代码包解至该目录下。

     tarzxvfACE-5.4.tar.gz/home/zhc/ace

3、这时,在ace的目录下会建立一个名为ACE_wrappers的子目录,ACE所有的源代码、工具、和例子都在这个目录中。

     先进入该目录,执行  cd/home/zhc/ace/ACE_wrappers

     然后建立一个子目录,用于存放ACE编译后的目标文件 mkdirbuild

     cdbuild

4、执行configure脚本,检查你的系统环境,配置并生成适合你的系统的Makefile文件。

     在执行configure脚本时,可以加入许多配置选项,其详细说明可以参看ACE_wrappers目录下的ACE-INSTALL.html文件,

     对于Redhat9系统来说,不必加任何参数,ACE就可以很好的工作了。

     ../configure

5、在漫长的检查和配置之后,如果没有什么问题,你就可以开始编译了。

     这一步很简单,执行   make

     然后,泡一杯茶,静静的等待就行了。

6、如果编译顺利的通过(通常都会是这样的),那么恭喜你,你已经成功了一大半了,下面要做的仅仅是以些配置工作而已。

     接下来的工作是安装,这一步是可选的,目的是把编译生成的ACE的库文件、头文件和手册页等安装到/usr/local的相应目录中去,为了今后使用的方便,我建议你还是进行这一步,执行

     su

     root'spassword

     makeinstall

  7.安装之后,我们就可以进行最后的配置工作了。

     首先设置环境变量ACE_ROOT,执行

     setenvACE_ROOT/home/zhc/ace/ACE_wrappers

     注意其中的路径要根据你的实际情况而定

     如果你不想每次都手工设定路径,可以编辑你的bash的配置文件,执行cd

     vi.bash_profile

     在其中填加如下两行

     ACE_ROOT=/home/work/research/ace/ACE_wrappers

     exportACE_ROOT

  8.然后,在$ACE_ROOT/ace目录中创建一个名为config.h的文件,在其中包含如下一行#include"ace/config-linux.h"

     或者,简单起见,你也可以直接建立一个指向config-linux.h的符号链接,执行

     ln-sconfig-linux.hconfig.h

  9.同样,在$ACE_ROOT/include/makeinclude目录中创建一个名为platform_macros.GNU的文件,在其中包含如下一行

     include$(ACE_ROOT)/include/makeinclude/platform_linux.GNU

     或者,简单起见,你也可以直接建立一个指向platform_linux.GNU的符号链接,执行 ln-splatform_linux.GNUplatform_macros.GNU

 10.最后一步,设置环境变量LD_LIBRARY_PATH,执行

setenvLD_LIBRARY_PATH

$ACE_ROOT/ace:

$ACE_ROOT/lib:

/usr/local/lib:

$LD_LIBRARY_PATH

     或者在~/.bash_profile文件中添加如下两行

     LD_LIBRARY_PATH=$ACE_ROOT/ace:

$ACE_ROOT/lib:

/usr/local/lib:

$LD_LIBRARY_PATH

     exportLD_LIBRARY_PATH

(3)安装完成:

经过上面的步骤,ACE已经安装到了您的系统上了,下面我们将编译并执行ACE的例程以验证我们的工作。

这里我们以《C++网络编程,卷一》所带的例子为例。

  1.进入例程目录,执行cd$(ACE_ROOT)/examples/C++NPv1

  2.编译例子程序,执行make

     如果前面的安装和配置正确,很快就能够得到编译后的例子程序。

  3.分别执行一个服务器程序(随便哪一个都行)和一个客户端程序(Logging_Client),如果程序运行正确,说明前面的安装和配置成功,下面你就可以开始你的ACE学习之旅了。

以上方法已经在SUSE和REDHAT上完成。

 

还有一个安装的例子:

aceforlinux的安装

由于安装说明文件“ACE-INSTALL.html”中提及的linux安装过程极少,其主要针对Unix、Windows,手动配置较多,加上本人安装后感觉“ACE-INSTALL.html”文件有些影响视听,因为主要的动作都可以由ACE包中的安装脚本ACE-install.sh自动完成,我们主要的工作就可以直接对这个安装脚本来处理即可。

 

1、安装环境:

 

lRedHat9.0 

ACE安装包ACE+TAO+CIAO.tar.gz, 

http:

//deuce.doc.wustl.edu/Download.html,"LatestBetaKit",beta版既是ACE的最新版。

 

2、安装过程:

 

第一步 

先设置ACE_ROOT环境,命令:

 

“vi/etc/profile” 

在其中加入4行 

ACE_ROOT=/opt/ACE 

exportACE_ROOT 

LD_LIBRARY_PATH=$ACE_ROOT/ace:

$LD_LIBRARY_PATH 

exportLD_LIBRARY_PATH 

我是加在“exportPATHUSER….”后的。

完成后将/etc/profile执行一次,命令:

 

“chmod555/etc/profile” 

“/etc/profile” 

这样我们的ACE_ROOT就设置好了,可以用如下命令查看ACE_ROOT是否设置好了:

 

“echo$ACE_ROOT” 

这个时候最好reboot启动一次linux。

 

第二步 

不要自己手工将ACE+TAO+CIAO.tar.gz包完全解开,特别强调不要完全解开,后面可以看到安装脚本会给我们解开它的;如果你手工解开全部,安装脚本将会将你的解压缩目录删除的!

我们要做的事就只是将ACE+TAO+CIAO.tar.gz包中的ACE-install.sh安装脚本单独解出来,并对其修改。

我们只要这一个文件就可以。

 

用mkdir建目录,如/home/my/ACE,然后将你的ACE+TAO+CIAO.tar.gz放在此目录下(用cp命令拷贝或mv命令移动到此目录)。

注意这个目录将是你的一个存放ACE+TAO+CIAO.tar.gz的目录,安装脚本会来这个目录找这个文件的,这个目录和ACE_ROOT是不一样的,且ACE-install.sh也提示不要将这两个目录设置成同一个目录。

ACE_ROOT将是我们的安装目标目录。

 

从ACE+TAO+CIAO.tar.gz解压出单个文件ACE-install.sh:

 

“tar–zxvfACE+TAO+CIAO.tar.gzACE_wrappers/ACE-install.sh” 

解好后,会出来一个新的子目录“ACE_wrappers”。

此时可以先将ACE-install.sh移到外面的目录来:

 

“mv/ACE_wrappers/ACE-install.sh.” 

“.”代表当前目录。

当然ACE-install.sh在什么路径下是没什么影响的,因为我们要对ACE-install.sh的内容进行修改的,里面有很多路径要修改。

好,现在在/home/my/ACE就有了ACE-install.sh,我们现在用vi对其进行修改,修改前自己可以先备份一个。

命令:

 

“cpACE-install.shACE-install.sh.bak” 

“viACE-install.sh” 

我们可以看到缺省的,这个文件是用来在UNIX下做安装的。

所以我们要将其中的有关UNIX的部分换成linux即可。

 

先找到“MY_ACEDIR=${HOME}/aceconfig”,将其改成“MY_ACEDIR=/home/my/ACE”,就是改成我们自己建的、放有ACE+TAO+CIAO.tar.gz文件的目录,之后去掉前面的注释“#”号。

 

接着在下面一点,找到“MY_ACE_CONFIG=config-sunos5.4-sunc++-4.x.h”,将其修改成“MY_ACE_CONFIG=config-linux.h”,即改成linux下的配置文件。

继续改,找到“MY_ACE_GNU_MACROS=platform_sunos5_sunc++.GNU”,将其改成“MY_ACE_GNU_MACROS=platform_linux.GNU”。

这个是各种操作系统平台下的GNU宏文件设置。

 

好了,文件修改完毕,保存退出“:

wq”。

 

第三步 

我们的重点到了,现在就可以安装ACE了。

 

此时应该是在/home/my/ACE目录下,我们执行:

 

./ACE-install.sh

第三章:

AIX(IBM)平台

1、把ace放到机器上面:

/ztesoft/ocs/ACE-5.5。

2、创建环境变量ACE_ROOT=/ztesoft/ocs/ACE-5.5/ACE_wrappers;exportACE_ROOT

3、在目录$ACE_ROOT/ace/下面建立一个config.h文件(一般情况下,这个文件不存在,如果已经存在,则只需要修改内容)。

在config.h文件中增加一行:

#include"ace/config-aix-5.x.h"

4、在目录$ACE_ROOT/include/makeinclude/下面建立一个platform_macros.GNU文件,并在文件中增加一行(针对IBM平台):

include$(ACE_ROOT)/include/makeinclude/platform_aix_ibm.GNU

5、打开platform_aix_ibm.GNU文件,会发现在15行有这么一行:

buildbits?

=native,这个就是配置平台的字长,OCS系统是64位的,所以这里也要配成buildbits?

=64。

6、在$ACE_ROOT/ace下面make。

正常情况下需要安装gmake,但是在ACE5.6以上版本,则不需要,但是需要做一些修改:

ACE的安装是比较麻烦的,我在所内的部署是选取Riverace公司商业支持的安装程序,对对应的版本的,之前我看到上面才支持到VACPP6.0,然后下载到XLC8.0的机器上编译,也能通过的,现在网页上已经标出支持XLC8.09.0了;

安装步骤是:

设定环境变量。

exportACE_ROOT=xxx/ACE56/ACE_wrappers

exportLD_LIBRARY_PATH=$LD_LIBRARY_PATH:

$ACE_ROOT/ace:

$ACE_ROOT/lib:

$ACE_ROOT/bin

exportPATH=$PATH:

$ACE_ROOT/ace:

$ACE_ROOT/lib:

$ACE_ROOT/bin:

/usr/vacpp/bin

接着,添加环境配置文件。

cdxxx/ACE56/ACE_wrappers/ace/

cp./config-aix-5.x.x.h./config.h

cd../include/makeinclude/

ln-splatform_aix_ibm.GNUplatform_macros.GNU

ACE_wrappers目录下是否有objdir,如果有,删除该目录先所有内容,如果没有,就新建一个,然后在该目录下执行../configure,执行时间会很长,我执行了近1个小时,

然后会在该目录下生成对应的编译文件等,然后就编译,我是用root用户编译的,注意root用户的切换方式,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1