ACE windows vs2008 安装和配置
来源:互联网 发布:黑魂3捏脸数据 编辑:程序博客网 时间:2024/05/24 15:42
1、下载ACE-5.5
ACE的安装文件可以在http://download.dre.vanderbilt.edu/中下载,ACE-5.5.tar,下载完成后将其解压,我的解压路径为c:/ACE_wrappers。
2、设置环境变量
添加一个名为ACE_ROOT的用户环境变量,值为刚才ACE的解压路径c:/ACE_wrappers;添加用户的PATH环境变量,值为%ACE_ROOT%/lib,这样才能保证系统能找到ACE编译生成的动态连接库。
3、设置VS2008的C++开发项目信息
菜单-工具-选项-项目和解决方案-VC++目录,在右侧目录列表中选择"包含目录",添加$(ACE_ROOT),在右侧目录列表中选择"库文件",添加$(ACE_ROOT)/lib。
4、编译ACE
在ACE_ROOT/ace目录创建一个名为config.h的文件。编辑文件并加入以下内容
#define ACE_HAS_STANDARD_CPP_LIBRARY 1
#include "ace/config-win32.h"
其中第一行是因为我想用标准C++跨平台,第二行则是必须要的,表明当前是在win32的环境下进行ACE的项目开发。进入ACE_ROOT/ace目录中,直接打开ace_vc8.sln,直接生成ACE项目的Debug版和Release版,编译过程大概需要几分钟。完成后,在%ACE_ROOT%/lib中能找到以下四个文件,分别是"ACE.dll","ACE.lib","ACEd.dll","ACEd.lib",其中带"d"的表示的是Debug版本。
5、验证ACE
打开VS2008,建立一个空项目,选择空文件的,不要带预加文件的,将ACE程序员手册中的第一个程序拷入其中。配置项目属性->链接器->输入->附加依赖项,添入ACEd.lib。编译,就能看到你的ACE版的"hello world"。
#include "ace/Log_Msg.h"
int ACE_TMAIN(int argc,char* argv[])
{
ACE_DEBUG((LM_DEBUG,ACE_TEXT("Hello World !/n")));
return 0;
}
若有如下错误,则修订配置
出错提示:
----- Build started: Project: RegisterServer, Configuration: Debug Win32 ------
Compiling
RegisterServer.cpp
Linking
RegisterServer.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) int __cdecl ace_os_wmain_i(class ACE_Main_Base &,int,wchar_t * * const)" (__imp_?ace_os_wmain_i@@YAHAAVACE_Main_Base@@HQAPA_W@Z) referenced in function _wmain
RegisterServer.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: static int __cdecl ACE_Service_Config::open(int,wchar_t * * const,wchar_t const *,int,int,int)" (__imp_?open@ACE_Service_Config@@SAHHQAPA_WPB_WHHH@Z) referenced in function "int __cdecl ace_wmain_i(int,wchar_t * * const)" (?ace_wmain_i@@YAHHQAPA_W@Z)
D:/ACE_OUTPUT/Game//RegisterServerd.exe : fatal error LNK1120: 2 unresolved externals
Build log was saved at "file://d:/My Sources/RegisterService/RegisterServer/Debug/BuildLog.htm"
RegisterServer - 3 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 1 up-to-date, 0 skipped ==========
问题分析
出错信息显示,不能解析函数ace_os_wmain_i()以及 ACE_Service_Config::open()。
从这里可以看出,链接器需要UNICODE版本的ace库,而我们在生成ACE的时候,并没有生成宽字符
的UNICODE版本。
解决办法:
打开项目的属性页,找到配置属性,在字符集中,选择多字节字符集。再重新编译,问题解决。
- ACE windows vs2008 安装和配置
- ACE VS2008 配置
- WIN7 + VS2008 ACE配置
- ACE VS2008 环境配置
- ACE入门-VS2008下配置ACE
- BALER ace 相机的安装和配置
- windows ACE的安装
- VS2008下 ACE 编译 for WINDOWS
- VS2008编译器下ACE的配置
- VS2008编译器下ACE的配置
- VS2008编译器下ACE的配置
- VS2008 ACE安装配置解决(编译不通过,报很多错)
- 在windows下编译配置ACE和TAO
- 在Windows和VC++6.0下的ACE安装手册
- 在Windows和VC++6.0下的ACE安装手册
- 在Windows和VC++6.0下的ACE安装手册- -
- 在Windows和VC++6.0下的ACE安装手册
- VS2008下安装和配置boost
- tomcat bad version number in class file 的解决方法
- MFC中载入位图及其大小的比例的转换
- VIM扫盲1
- 1038 Bugs Integrated, Inc.//状态压缩DP
- eclipse中Hibernate tools的安装
- ACE windows vs2008 安装和配置
- 今天
- datagridview详解
- PS怎样把成图变成素描或者速写稿
- 学习UML
- 漫谈 Clustering (3): Gaussian Mixture Model
- 软件产品服务化
- 模块化设计的一般准则
- 推荐一个好用的linux PDF阅读器:foxit reader