Win7下VS2010使用STLPort 和boost1.56.

STLport的下载地址

http://sourceforge.net/projects/stlport/

下载后,解压出文件。我的目录是 D:\STLport-5.2.1 。

右键计算机,属性,高级系统设置,环境,系统变量,编辑Path变量,添加;C:\Program Files\Microsoft Visual Studio 10.0\VC\bin。(我的路径是这样,分号是分隔符),确定。。

然后在 C:\Program Files\Microsoft Visual Studio 10.0\VC\bin 目录,编辑 vcvars32.bat 。

找到下面的一段,主要是添加STLport的include和lib路径,我的分别是 D:\STLport-5.2.1\stlport和D:\STLport-5.2.1\build\lib,注意分号,它是分隔符。

@rem INCLUDE

@rem -------

@if exist "%VCINSTALLDIR%ATLMFC\INCLUDE" set INCLUDE=%VCINSTALLDIR%ATLMFC\INCLUDE;%INCLUDE%;D:\STLport-5.2.1\stlport

@if exist "%VCINSTALLDIR%INCLUDE" set INCLUDE=%VCINSTALLDIR%INCLUDE;%INCLUDE%

@rem LIB

@rem ---

@if exist "%VCINSTALLDIR%ATLMFC\LIB" set LIB=%VCINSTALLDIR%ATLMFC\LIB;%LIB%;D:\STLport-5.2.1\build\lib

@if exist "%VCINSTALLDIR%LIB" set LIB=%VCINSTALLDIR%LIB;%LIB%

保存之后,双击 vcvars32.bat ,使我们的设置生效。

在 C:\Program Files\Microsoft Visual Studio 10.0\VC 目录下,运行 vcvarsall.bat 。

在 D:\STLport-5.2.1\stlport\stl 目录,编辑 _cstdlib.h。

将第158行的

inline _STLP_LONG_LONG  abs(_STLP_LONG_LONG __x) { return __x < 0 ? -__x : __x; }

这一行改为如下三行。(就是多了个if判断。)

#if !defined(_STLP_MSVC) || (_STLP_MSVC < 1600)

inline _STLP_LONG_LONG abs(_STLP_LONG_LONG __x) { return __x < 0 ? -__x : __x; }

#endif

保存。

打开开始菜单的Microsoft Visual Studio 2010下的Visual Studio Tools中Visual Studio Command Prompt(2010)。

切换到STLport的目录下

cd D:\STLport-5.2.1

d:

进行配置,可以通过 configure --help查看支持哪些配置。

configure msvc9

切换到lib目录

cd build/lib

然后是

nmake /f msvc.mak clean install

我测试的效果如下:

Setting environment for using Microsoft Visual Studio 2010 x86 tools

C:\Program Files\Microsoft Visual Studio 10.0\VC>cd D:\STLport-5.2.1

C:\Program Files\Microsoft Visual Studio 10.0\VC>d:

D:\STLport-5.2.1>configure msvc9

STLport Configuration Tool for Windows

Setting compiler: Microsoft Visual C++ 2008

Setting platform: Windows XP

Done configuring STLport.

Go to build/lib folder and type "nmake clean install" to build  and

install STLport to the "lib" and "bin" folders.

Go to build/test/unit folder and type nmake clean install to

build unit tests and install them in bin folder.

D:\STLport-5.2.1>cd build/lib

D:\STLport-5.2.1\build\lib>nmake /f msvc.mak clean install

————

等了几分钟就安装好了。

在D:\STLport-5.2.1目录多了几个文件夹,如bin和lib等。

把 D:\STLport-5.2.1\bin下 stlport.5.2.dll,stlportd.5.2.dll,stlportstld.5.2.dll,复制到 C:\Program Files\Microsoft Visual Studio 10.0\VC\bin 目录下,这样vc就能找到它了。

设置vc工程的include和lib目录了。

VS2010菜单,View,Property Manager,Debug|Win32,双击Microsoft.Cpp.Win32.user,Common Properties,VC++ directories。

在 Include Directories 下添加 D:\STLport-5.2.1\stlport 。

在 Library Directories 下添加 D:\STLport-5.2.1\lib 。

确定,通过这样的设置,以后建立的工程的VC++ Directories都有这些东西,就不用那么麻烦每个工程都进行设置了。

测试程序。

/*功能,Win7下vs2010使用STLport。 

日期,2012年8月24日 星期五 

环境,win7-32-vs2010 

*/  

#include <iostream>   

#include <rope>   

   

using namespace std;  

   

int main()  

{  

    // crope是用来存储char字符的容器   

    crope crope1("Hello,");  

    crope crope2("STLport!");  

    cout << crope1 + crope2 << endl;  

   

    system("pause");  

    return 0;  

}  

/* 

输出效果: 

  

Hello,STLport! 

请按任意键继续. . . 

  

*/

 

boost1.56编译

对于1-56版本的文件
1、运行 boost_1_56_0\tools\build 目录下的 bootstrap.bat,生成 b2.exe 和 bjam.exe
2、将 b2.exe和bjam.exe复制到 boost_1_56_0 根目录
3、打开 vs2010 的命令窗口,并将当前目录切换到 boost_1_56_0 根目录
4、运行 b2.exe link=static link=shared threading=multi variant=debug,release
5、
6、配置VC项目:
   .C/C++ 常规 附加包含目录:C:\boost_1_56_0;%(AdditionalIncludeDirectories)
   .链接器 常规 附加库目录:C:\boost_1_56_0\stage\lib;%(AdditionalLibraryDirectories)

你可能感兴趣的:(VS2010)