博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ACE服务端编程1:使用VS2010编译ACE6.0及从ACE5.6升级的注意事项
阅读量:5757 次
发布时间:2019-06-18

本文共 1223 字,大约阅读时间需要 4 分钟。

ACE是一个跨平台的用于并发通信的C++框架,项目开始时使用的是ACE 5.6发布版,目前最新的ACE版本是6.3.0。

网上一直有一种黑ACE的氛围,主要黑点在于ACE的复杂和作者的背景,结合实际应用的经验来说,ACE还是C++里最成熟、稳定、全面的网络通信框架,看看有多少论文是与ACE有关的就能验证这一点,如果喜欢轻量级的,可以试试boost asio、Muduo,不过各有坑点~

考虑项目的稳定性和开发环境的原因,此次选择了ACE6.0.0版本作为升级版本,编译工具也从VS2003升级到VS2010。

使用VS2010编译ACE6.0:

1、下载ACE6.0版:

下载地址:http://download.dre.vanderbilt.edu/previous_versions/

最新版本下载地址:http://download.dre.vanderbilt.edu/

直接选择ACE-6.0.0.zip,不包含TAO+CIAO+DAnCE这些框架。。

2、将压缩包中的文件夹解压到D盘;

3、添加环境变量:ACE_ROOT="D:\Ace6.0\ACE_wrappers"  这是ACE解压后的目录:

4、添加环境变量:Path="%ACE_ROOT%\lib":

5、在ACE_ROOT\ace目录下新建config.h文件,文件内容:

#include "ace/config-win32.h"

6、直接用VS2010打开ACE_vc10.sln进行编译;编译成功后悔在lib目录下生成Aced.dll和Ace.dll。

ACE的项目划分较细,解决方案下有684项目,不过编译时间很快。

ACE6.0从ACE5.6升级的注意事项

开发工具同时从VS2003升级到VS2010,升级的过程较为顺利,虽然项目转换后报出100多个错误,不错主要是以下两个原因:

1、ACE5.6中的OS.h文件在6.0中被删除,改为OS_main.h,可以看到OS_main.h有下面这段注释:

解决办法:更改所有OS.h的include。

2、ACE_OS::lseek\ACE_OS::open\ACE_OS::close等函数报错,主要是ACE6.0中的文件IO模式有改变,并且默认不再包含其引用。

解决办法:在项目中引入以下几个头文件。

#include 
#include
#include
#include
#include
#include
#include
#include

 


 

记录,为更好的自己!

转载于:https://www.cnblogs.com/ym123/p/4277256.html

你可能感兴趣的文章
Chrome教程(二)使用ChromeDevTools命令菜单运行命令
查看>>
数据结构及算法基础--快速排序(Quick Sort)(二)优化问题
查看>>
你对position的了解到底有多少?
查看>>
随笔2013/2/19
查看>>
Windows Phone的Silverlight Toolkit 安装及其使用
查看>>
DBS:同学录
查看>>
Mysql备份系列(1)--备份方案总结性梳理
查看>>
[CareerCup] 1.6 Rotate Image 翻转图像
查看>>
jQuery中$.fn的用法示例介绍
查看>>
Python中的画图初体验
查看>>
Java程序员的日常 —— 响应式导航Demo
查看>>
objective-c内存管理基础
查看>>
sap关于价值串的说法(转载)
查看>>
采购申请转采购订单错误:在语言EN中没有维护短文本(请重维护物料460300080)
查看>>
Migration to S/4HANA
查看>>
sed 对目录进行操作
查看>>
什么是代码
查看>>
洛谷P2891 [USACO07OPEN]吃饭Dining
查看>>
移动端开发单位——rem,动态使用
查看>>
系列文章目录
查看>>