ace库linux安装
2018-12-02 13:59:38 fengchenshanxia 阅读数 65

ACE-6.4.0 linux下编译与安装
1. 从 http://www.cs.wustl.edu/~schmidt/ACE.html 的 Obtainin ACE 链接处下载ACE源码,我下载的是ACE-6.5.0.tar.gz
2. 假设下载的目录为~/source/ace
3. 解压ACE源码 tar zxvf ACE-6.4.0.tar.gz,解压后发现ace源码解压到~/source/ace/ACE_wrappers目录下
4. 参考http://www.dre.vanderbilt.edu/~schmidt/DOC_ROOT/ACE/ACE-INSTALL.html#unix   在linux环境下对ACE进行编译
4.1 设置环境变量
vim ~/.bash_profile
export ACE_ROOT=/home/yourname/ACE_wrappers
export LD_LIBRARY_PATH=/usr/local/lib:$ACE_ROOT/lib:$LD_LIBRARY_PATH
然后执行source ~/.bash_profile
4.2 创建文件 $ACE_ROOT/ace/config.h,写入如下内容
#ifndef _CONFIG_H_
#define _CONFIG_H_
#include "ace/config-linux.h"
#endif
4.3 创建platform_macros.GNU
创建文件 $ACE_ROOT/include/makeinclude/platform_macros.GNU 写入
include $(ACE_ROOT)/include/makeinclude/platform_linux.GNU
platform_macros.GNU写入INSTALL_PREFIX=/usr/local(可以自己选择),将ace的include lib share安装到/usr/local目录下
4.4 make
4.5 切换到root,因为只有root才可以写文件到/usr/local,并设置环境变量
    su root
    export ACE_ROOT=/home/yourname/ACE_wrappers
    make install    切换到/usr/local,进入include lib share可以看到ace的相关文件
4.6 上面使用$ACE_ROOT/lib作为ace的库文件路径,因为后面我们安装到/usr/local/lib里,可以把/usr/local/lib加入默认库文件查找路径
打开/etc/ld.so.conf
本来内容是如下:
include ld.so.conf.d/*.conf
我们添加ace路径后变成如下
include ld.so.conf.d/*.conf
/usr/local/lib
保存退出!
然后执行   ldconfig就可以了。
5. 测试
下面我们弄一个简单的ace程序:
/root/hello.cpp:
#include "ace/OS.h"
#include "ace/Log_Msg.h"
int main (int argc, char *argv[])
{
ACE_DEBUG((LM_DEBUG,"Hello, ACE!\n "));
ACE_OS::exit(1);
return 0;
}
这么就不写makefile了,直接用g++编译就是了。
编译
g++ hello.cpp -o hello -lACE
运行:
./hello
运行,输出了Hello, ACE! 哈哈~got it!
6. 参考:
   《ACE-6.1.0 linux 下的编译与安装步骤》http://www.cnblogs.com/liangxiaxu/archive/2013/03/07/2948417.html   官方网站写的编译方法:http://www.dre.vanderbilt.edu/~schmidt/DOC_ROOT/ACE/ACE-INSTALL.html#unix  
   《ACE在Linux 和 Windows 下ACE的编译》http://blog.csdn.net/zklth/article/details/7190927
--------------------- 
作者:sunny_ss12 
来源:CSDN 
原文:https://blog.csdn.net/sunny_ss12/article/details/52099427 
版权声明:本文为博主原创文章,转载请附上博文链接!

2011-11-14 23:58:56 wallwind 阅读数 1859

首先安装这个东西,网络上很多,百度google 一大把,我就找个比较有代表性的贴在下边吧。主要是想说一下我遇到的问题

首先把文件解压,我解压在了/Software文件夹下,解压后会出现一个名字为ACE_wrappers的文件夹。这样所有ACE的源文件都在/Software/ACE_wrappers里面

1.1    配置环境变量:
# vi /etc/profile
增加如下的内容
ACE_ROOT=/Software/ACE_wrappers ------就是上面存放ACE源文件的目录
export ACE_ROOT
LD_LIBARY_PATH=$ACE_ROOT/ace:$LD_LIBARY_PATH
export LD_LIBARY_PATH
# source /etc/profile

1.2    开始安装ACE
# cd /Software/ACE_wrappers
# vi ace/config.h
增加如下信息:
#include “ace/config-linux.h”
如果想用MSVC标准C++头,则需要在ace/config.h中增加定义:
#define ACE_HAS_STANDARD_CPP_LIBARY 1
我的config.h文件内容如下:
#define ACE_HAS_STANDARD_CPP_LIBARY 1 // 使用标准C++头
#define ACE_NO_INLINE // 不使用内连函数,能减小LIB和EXE的大小
#include “ace/config-linux.h”
保存后退出
# mkdir build ----新建一个build文件夹
# cd build
# ../configure --prefix=/usr/local/ACE -------在这里我指定了ACE的安装路径
# make & install

 

 

第一个问题,在make的时候找不到了ssl这个东西。。这个ssl具体来说是网络上一个安全协议。系统默认是安装的,但是我在编译时候一直出现这个问题,原来是打开了。我的版本号是6.0的。所以,经过查找帮助文档,configure这个配置的时候

  • --enable-ssl (yes): Include the ACE_SSL library when building ACE. Requires the SSL components to be available using the compiler's and linker's default search directories.
  • --with-openssl: Specifies the root directory of the OpenSSL installation; expects the specified directory to have include and lib subdirectories. To specify other locations for the header and libraries, use one or both of the following.
  • --with-openssl-include: Specify the directory containing the OpenSSL header files.
  • --with-openssl-libdir: Specify the directory containing the OpenSSL libraries.

    应该关闭它命令如下../configure --disable-ssl

    在进行编译,就会成功了,今天就到这里了

    更多文章欢迎访问:http://blog.csdn.net/wallwind

  • 2012-03-17 17:36:38 qianniu2meiyi 阅读数 699

    首先:下载ACE包,这里使用ACE-5.8.tar.gz,其他下载地址:http://download.dre.vanderbilt.edu/previous_versions/

    这里只安装了ACE,其他的包没有涉及。

    1.在目录$HOME/ACE中解压ACE-5.8.tar.gz, tar -xvf ACE-5.8.tar.gz,当前目录下生成目录ACE_wrappers。我的环境下:$HOME/ACE == /home/worker/ACE

    2. 设置ACE_ROOT环境变量:(可以在/etc/profile中设置(我在这里设置),也可以在个人home目录下的.bash_profile里设置)

        ACE_ROOT = /home/worker/ACE/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. 在目录 $ ACE_ROOT中新建目录 build, mkdir  build。

       进入build目录运行配置脚本  . ./configure [options]

       常用的选项有: CXXFLAGS=-O3   --disable-debug   --disable-ace-examples   --disable-ace-tests   --without-tao

       补充:如果要接定安装路径(默认安装在/usr/local),可以再加上参数:--prefix [安装路径]

       即: . ./configure  --prefix=/usr/local/ACE   CXXFLAGS=-O3   --disable-debug   --disable-ace-examples   --disable-ace-tests   --without-tao


    5. 编译#>make

       该过程可能出现有些头文件没有找到的错误,需要运行相关命令进行安装,我碰到的错误是openssl的相关头文件没有,所有需要安装libopenssl的开发包

       zypper search   *openssl*   用于查找关于openssl的所有包,挑选需要的进行安装,这里需要libopenssl-devel

       zypper  install libopenssl-devel    (这里用的是suselinux,所有采用这条命令,

                                 如果是其他版本采用不同的命令,如centos  fedora: yum search *openssl*   yum install libopenssl-devel)

    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)

    补充:ace中很多功能并没有默认编译进来,比如epoll,fastmemcpy等,因此如果要使用这些功能,必须修改config.h文件,加入相应的宏,对ace重编译。

            如果想用MSVC标准C++头,则需要在ace/config.h中增加定义:
           #define ACE_HAS_STANDARD_CPP_LIBRARY 1
          config.h文件内容添加,如下:
           #define ACE_HAS_STANDARD_CPP_LIBRARY 1     //  使用标准C++头
           #define ACE_NO_INLINE  1  //  不使用内连函数,能减小LIB和EXE的大小

    7.测试.

     #include <ace/Log_Msg.h>
    #include <ace/OS_main.h>

    using namespace std;

    int ACE_TMAIN(int argc, ACE_TCHAR *argv[])
    {
            ACE_DEBUG((LM_DEBUG, ACE_TEXT(“Hello World!”)));
            return 0;
    }


     编译:g++ -I/usr/local/ACE/include -O0 -g3 -Wall -c -fmessage-length=0 -MMD -MP -MF"HelloWorld.d" -MT"HelloWorld.d" -o "demo.o" "demo.cpp"

     链接: g++ -I/usr/local/ACE/include  -L/usr/local/ACE/lib  -lACE -lrt -lpthread  -o "ACETest" demo.o

     运行:./ACETest   (补充:此时的LD_LIBRARY_PATH目录必须指向ACE的lib目录这里为/usr/local/ACE/lib,否则运行出错。

    执行成功输出:Hello World!



    2013-05-31 09:40:16 luopeiyuan1990 阅读数 1233

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

    准备工作:

    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程序

    开始安装:

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

    1. 首先确定ACE的安装路径,并建立相应的目录。
      这里,我们把ACE安装在/home/zhc/ace/的目录下,先执行
      mkdir /home/zhc/ace
    2. 然后将获得的ACE源代码包解至该目录下。
      tar zxvf ACE-5.4.tar.gz /home/zhc/ace
    3. 这时,在ace的目录下会建立一个名为ACE_wrappers的子目录,ACE所有的源代码、工具、和例子都在这个目录中。
      先进入该目录,执行
      cd /home/zhc/ace/ACE_wrappers
      然后建立一个子目录,用于存放ACE编译后的目标文件
      mkdir build
      cd build
    4. 接着,执行configure脚本,检查你的系统环境,配置并生成适合你的系统的Makefile文件。
      在执行configure脚本时,可以加入许多配置选项,其详细说明可以参看ACE_wrappers目录下的ACE-INSTALL.html文件,
      对于Redhat9系统来说,不必加任何参数,ACE就可以很好的工作了。
      ../configure
    5. 在漫长的检查和配置之后,如果没有什么问题,你就可以开始编译了。
      这一步很简单,执行
      make
      然后,泡一杯茶,静静的等待就行了。
    6. 如果编译顺利的通过(通常都会是这样的),那么恭喜你,你已经成功了一大半了,下面要做的仅仅是以些配置工作而已。
      接下来的工作是安装,这一步是可选的,目的是把编译生成的ACE的库文件、头文件和手册页等安装到/usr/local的相应目录中去,为了今后使用的方便,我建议你还是进行这一步,执行
      su
      root's password
      make install
    7. 安装之后,我们就可以进行最后的配置工作了。
      首先设置环境变量ACE_ROOT,执行
      setenv ACE_ROOT /home/zhc/ace/ACE_wrappers
      注意其中的路径要根据你的实际情况而定
      如果你不想每次都手工设定路径,可以编辑你的bash的配置文件,执行
      cd
      vi .bash_profile
      在其中填加如下两行
      ACE_ROOT=/home/work/research/ace/ACE_wrappers
      export ACE_ROOT
    8. 然后,在$ACE_ROOT/ace目录中创建一个名为config.h的文件,在其中包含如下一行
      #include "ace/config-linux.h"
      或者,简单起见,你也可以直接建立一个指向config-linux.h的符号链接,执行
      ln -s config-linux.h config.h
    9. 同样,在$ACE_ROOT/include/makeinclude目录中创建一个名为platform_macros.GNU的文件,在其中包含如下一行
      include $(ACE_ROOT)/include/makeinclude/platform_linux.GNU
      或者,简单起见,你也可以直接建立一个指向platform_linux.GNU的符号链接,执行
      ln -s platform_linux.GNU platform_macros.GNU
    10. 最后一步,设置环境变量LD_LIBRARY_PATH,执行
      setenv LD_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
      export LD_LIBRARY_PATH

    安装完成:

    经过上面的步骤,ACE已经安装到了您的系统上了,下面我们将编译并执行ACE的例程以验证我们的工作。
    这里我们以《C++网络编程,卷一》所带的例子为例。

    1. 进入例程目录,执行
      cd $(ACE_ROOT)/examples/C++NPv1
    2. 编译例子程序,执行
      make
      如果前面的安装和配置正确,很快就能够得到编译后的例子程序。
    3. 分别执行一个服务器程序(随便哪一个都行)和一个客户端程序(Logging_Client),如果程序运行正确,说明前面的安装和配置成功,下面你就可以开始你的ACE学习之旅了
    2011-11-14 23:58:00 iteye_13411 阅读数 18

    首先安装这个东西,网络上很多,百度google 一大把,我就找个比较有代表性的贴在下边吧。主要是想说一下我遇到的问题

    首先把文件解压,我解压在了/Software文件夹下,解压后会出现一个名字为ACE_wrappers的文件夹。这样所有ACE的源文件都在/Software/ACE_wrappers里面

    1.1 配置环境变量:
    # vi /etc/profile
    增加如下的内容
    ACE_ROOT=/Software/ACE_wrappers ------就是上面存放ACE源文件的目录
    export ACE_ROOT
    LD_LIBARY_PATH=$ACE_ROOT/ace:$LD_LIBARY_PATH
    export LD_LIBARY_PATH
    # source /etc/profile

    1.2 开始安装ACE
    # cd /Software/ACE_wrappers
    # vi ace/config.h
    增加如下信息:
    #include “ace/config-linux.h”
    如果想用MSVC标准C++头,则需要在ace/config.h中增加定义:
    #define ACE_HAS_STANDARD_CPP_LIBARY 1
    我的config.h文件内容如下:
    #define ACE_HAS_STANDARD_CPP_LIBARY 1 // 使用标准C++头
    #define ACE_NO_INLINE // 不使用内连函数,能减小LIB和EXE的大小
    #include “ace/config-linux.h”
    保存后退出
    # mkdir build ----新建一个build文件夹
    # cd build
    # ../configure --prefix=/usr/local/ACE -------在这里我指定了ACE的安装路径
    # make & install

    第一个问题,在make的时候找不到了ssl这个东西。。这个ssl具体来说是网络上一个安全协议。系统默认是安装的,但是我在编译时候一直出现这个问题,原来是打开了。我的版本号是6.0的。所以,经过查找帮助文档,configure这个配置的时候

    --enable-ssl (yes): Include the ACE_SSL library when building ACE. Requires the SSL components to be available using the compiler's and linker's default search directories. --with-openssl: Specifies the root directory of the OpenSSL installation; expects the specified directory to have include and lib subdirectories. To specify other locations for the header and libraries, use one or both of the following. --with-openssl-include: Specify the directory containing the OpenSSL header files. --with-openssl-libdir: Specify the directory containing the OpenSSL libraries.

    应该关闭它命令如下../configure --disable-ssl

    在进行编译,就会成功了,今天就到这里了

    更多文章欢迎访问:http://blog.csdn.net/wallwind

    Linux 下 ACE 的编译,安装

    阅读数 3859

    文中的描述基于ubuntu12.04LTS编译,安装ACE6.1.2关于ACE的linux安装流程,看ACE软件包(下面第四步有路径下载)里的ACE-INSTALL.html是最好的。如果英文不好可以参考下这里。这里只是留下给自己备忘。1.make,gcc版本检查备注:使用gcc--version命令显示版本为gcc(Ubuntu/Lin

    博文 来自: gamecreating

    Linux AS4 ACE安装手记

    阅读数 409

    1、获取安装包到ACE的官方网站http://www.cs.wustl.edu/~schmidt/ACE.html或者http://riverace.com/index.htm下载最新版的ACE,我下的是ACE-5.6.tar.gz;*.tar.gz是类Unix平台的版本,*.zip是windows平台的版本2、查看autoconf版本#autoconf-V

    博文 来自: Mrknowledge

    ACE安装与使用(VC/LINUX)

    阅读数 710

    可以从以下地址下载ACE的安装包:http://deuce.doc.wustl.edu/Download.html。这里提供有ACE的多个版本的集成包,这里以ACE-5.4+TAO-1.4+CIAO-0.4.tar.gz为例。 VC下的安装1.解压后放在D盘(或者自定义也可)D:/ACE_wrappers2.在D:/ACE_wrappers/ace目录下新建文件config.h加入一行  

    博文 来自: chenlanmin

    Linux AS4 安装ACE记录

    阅读数 167

    本文参照网络文章,同时结合自己的实践写的 1、获取安装包到ACE的官方网站http://www.cs.wustl.edu/~schmidt/ACE.html或者http://riverace.com/index.htm下载最新版的ACE,我下的是ACE-5.6.tar.gz; 菜鸟们不要下错了,*.tar.gz是类Unix平台的版本,*.zip是windows平台的版本

    博文 来自: terminator3

    ACE的编译和安装,for windows、Linux

    阅读数 11

    ACE的编译和安装,forwindows、Linux2006-10-1109:14fromwww.acejoy.comACE网络编程开发论坛一.Windows下forMSVC的安装与配置我们用的是ACE-5.4+TAO-1.4+CIAO-0.4.zip,Windows下解压缩该压缩包到目标路径(设为D:\ACE_wrappers),创建文件:$ACE_ROOT/...

    博文 来自: carma2002
    没有更多推荐了,返回首页