Win32平台如何配置才能使用Boost、ACE、CppUnit

转自:http://blog.csdn.net/livelylittlefish/archive/2010/12/24/6096108.aspx 

Win32平台如何配置才能使用Boost、ACE、CppUnit

1. 环境变量

 

(1) ACE-5.6.4添加/修改的的环境变量

 

C:/Documents and Settings/zubo.yu>echo %ACE_ROOT%

E:/opensource/ACE-5.6.4/ACE_wrappers

 

为已有的系统变量PATH添加value: %ACE_ROOT%/lib,如下。

 

C:/Documents and Settings/zubo.yu>echo %PATH%

C:/WINDOWS/system32;C:/WINDOWS;C:/WINDOWS/System32/Wbem;D:/Program Files/Cppcheck/;C:/Program Files/

Rational/ClearCase/bin;C:/Program Files/Common Files/Thunder Network/KanKan/Codecs;D:/Program Files/

UltraEdit/;E:/opensource/ACE-5.6.4/ACE_wrappers/lib

 

(2) Boost-1.40添加的环境变量

C:/Documents and Settings/zubo.yu>echo %BOOST_1_40_ROOT%

E:/opensource/boost_1_40_0

 

(3) CppUnit-1.12.1添加的环境变量

C:/Documents and Settings/zubo.yu>echo %CPPUNIT_ROOT%

E:/opensource/cppunit-1.12.1

 

即,

ACE_ROOT=E:/opensource/ACE-5.6.4/ACE_wrappers

BOOST_1_40_ROOT=E:/opensource/boost_1_40_0

CPPUNIT_ROOT=E:/opensource/cppunit-1.12.1

 

2. VS2005配置

 

vs2005添加对ACE-5.6.4Boost-1.40CppUnit-1.12.1的支持。

 

Tools->options->projects and solutions->VC++ directories

->Include files: 添加$(ACE_ROOT)$(BOOST_1_40_ROOT)$(CPPUNIT_ROOT)/include

->Library files: 添加$(ACE_ROOT)/lib$(BOOST_1_40_ROOT)/stage/lib$(CPPUNIT_ROOT)/lib

 

3. vs2010 配置

 

vs2010添加对ACE-5.6.4Boost-1.40CppUnit-1.12.1的支持。

 

2,在vs2010中,Tools->options->projects and solutions->VC++ directories配置被取消。

公共的"VC++ directories"属性在vs2010中要在Microsoft.Cpp.Win32.user属性页中设置,如下图。

 

 

 

设置如下:

Microsoft.Cpp.Win32.user属性页->通用属性->VC++目录

->包含目录: 添加$(ACE_ROOT)$(BOOST_1_40_ROOT)$(CPPUNIT_ROOT)/include

->库目录: 添加$(ACE_ROOT)/lib$(BOOST_1_40_ROOT)/stage/lib$(CPPUNIT_ROOT)/lib

 

4. ACE项目在vs2005中的相关配置

 

Project->Properties (or Alt+F7)->Configuration properties->Linker->Input->Additional dependencies: 填入ACEd.libACE.lib

ACEd.libdebug版的库,ACE.librelease版的库。

 

若不添加.lib库文件,会出现“unresolved external symbol”的错误,如:

1>main.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: int __thiscall ACE_Main_Base::run(int,char * * const)" (__imp_?run@ACE_Main_Base@@QAEHHQAPAD@Z) referenced in function _main

5. ACE项目在vs2010中的相关配置

 

项目->属性 (或者Alt+F7)->配置属性->连接器->输入->附加依赖项->编辑: 填入ACEd.libACE.lib

填入ACEd.libACE.lib后,其变为ACEd.lib;%(AdditionalDependencies)

 

否则,与vs2005一样,也会出现“无法解析的外部符号”的错误,如:

1>main.obj : error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: int __thiscall ACE_Main_Base::run(int,char * * const)" (__imp_?run@ACE_Main_Base@@QAEHHQAPAD@Z),该符号在函数 _main 中被引用

该项配置在vs2010中也可设置为公共属性,设置如下:

Microsoft.Cpp.Win32.user属性页->通用属性->连接器->输入->附加依赖项->编辑: 填入ACEd.libACE.lib

这样配置以后,非ACE的应用程序也会有ACE的依赖项,当然这不是错误的。

Technorati 标签: Boost, ACE, CppUnit, windows

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值