天天看点

STLport 在VS2010下的编译(转)

Win7下VS2010使用STLPort ———— 更新于2012年8月24日 星期五 http://blog.csdn.net/shunqiziranhao007/article/details/7905435 ———— 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都有这些东西,就不用那么麻烦每个工程都进行设置了。