ACE(ADAPTIVE Communication Environment),ACE入门的第一课就是要学习怎么在自己的系统上构建ACE。

ACE是跨平台的,这是它的一个很重要的特性,ACE支持很多的操作系统.

Windows下的ACE构建

  在http://download.dre.vanderbilt.edu/  ,我下载的是最新版本的,ACE-6.4.0

  1:现在以D:\Ace 为例,解压后形成ACE_wrappers文件夹,因此ACE将会存在于ACE_wrappers\ace目录中。ACE_ROOT=D:\Ace\ACE_wrappers。

  2:在D:\Ace\ACE_wrappers\ace目录中新建一个头文件,命名为config.h其内容为

#define ACE_HAS_STANDARD_CPP_LIBRARY 1

#include "ace/config-win32.h"

其中第一行是因为我想用标准C++跨平台,第二行则是必须要的

要用UNICODE,加#define ACE_USES_WCHAR 1

  3:配置环境变量

   ACE_ROOT:ACE_wrappers所在的目录,这里是D:\Ace\ACE_wrappers

   PATH:%ACE_ROOT%\lib

   设置ACE_ROOT是为了便于设置ACE有关的include头文件目录

   设置PATH,是为了当你的基于ACE的应用程序执行时,系统可以找到相应的ACE动态连接库,发布版本对应的是ACE的发布版本DLL(ACE.dll),调试版本对应的是ACE的调试版本DLL(ACEd.dll)

  4:我本地安装了visual Studio 2012,所以我用vs2012打开ACE的工程文件,在release和debug两种编译方式下进行编译,得到相应的库文件(ACE.dll、ACE.lib 和 ACEd.dll、ACEd.lib),其中ACE.dll 、ACE.lib是由release版生成的,ACEd.dll、ACEd.lib是由debug版生成的。

  在这个编译过程中可能报错,我遇见的需要修改

  

  5:配置ACE环境

  打开vs2012,项目---属性-----VC++目录

  1) 可执行目录:D:\Ace\ACE_wrappers\bin
  2) 包含目录:D:\Ace\ACE_wrappers
  3) 库目录:D:\Ace\ACE_wrappers\lib
  4)源目录:E:\ACE_wrappers

  还有以下配置:

1:

  

2:

3:

注:可以在头文件中加入如下代码就不用再手动填加lib库文件
#ifdef _DEBUG
#pragma comment (lib,"ACEd.lib")
#else
#pragma comment (lib,"ACE.lib")
#endif

在linux下的构建还没实际操作:就不再介绍了.

最新文章

  1. 14 Generator
  2. js地区转盘抽奖插件
  3. NYOJ 737 石子合并(一)
  4. nginx切割日志
  5. php图片下载
  6. java并发:获取线程执行结果(Callable、Future、FutureTask)
  7. 【Base64】JDK里面实现Base64的API
  8. 国内静态文件CDN服务介绍 国内js公共库
  9. rspec学习02
  10. 【USACO 1.5.2】回文质数
  11. 【部分枚举】【3-21个人赛】ProblemH
  12. Webserver管理系列:9、创password重设盘
  13. Struts1的实现原理
  14. Oracle 闪回表实验
  15. qsdk编译
  16. 《javascript设计模式与开发实践》阅读笔记(10)—— 组合模式
  17. AT987 高橋君
  18. 【BZOJ】3575: [Hnoi2014]道路堵塞
  19. 我们为何放弃Eclipse,投奔IntelliJ IDEA
  20. HDU - 5877 Weak Pair (dfs+树状数组)

热门文章

  1. 前端的UI设计与交互之导航篇
  2. poj-1218 THE DRUNK JAILER 喝醉的狱卒
  3. 【Python】 用户图形界面GUI wxpython IV 菜单&对话框
  4. 一次精疲力尽的改bug经历
  5. shell队列实现线程并发控制(转)
  6. hibernate框架学习笔记5:缓存
  7. Python2.x的编码问题
  8. Windows Server2012 故障转移集群之动态仲裁(Dynamic Quorum)
  9. markdown最基本的几种语法
  10. LeetCode & Q20-Valid Parentheses-Easy