• VS2010 安装使用STLPort


    VS2010 安装使用STLport

    1.本机环境

      win7 64位

      visual studio 2010 中文旗舰版

      STLport-5.2.1.tar.bz2

    2.下载STLport

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

      下载后解压,本人的解压路径为:D:STLport,解压解压后包含多个文件加和目录。

    3.修改配置

      (1)在系统的path环境变量中增加如下目录:(该目录就是安装vs2010的位置) 

        D:Program Files (x86)Microsoft Visual Studio 10.0VCin     (仅限本人机器)

      (2)编辑vcvars32.bat文件

        该文件的完整目录:D:Program Files (x86)Microsoft Visual Studio 10.0VCinvcvars32.bat

        主要在该文件中添加STLport的include(头文件)路径和lib(库文件)路径,以便vs能找到我们所包含的文件,如:#include <string>。

        修改后的内容如下所示:

        @rem INCLUDE
        @rem -------
        @if exist "%VCINSTALLDIR%ATLMFCINCLUDE" set INCLUDE=%VCINSTALLDIR%ATLMFCINCLUDE;%INCLUDE%;D:STLportstlport
        @if exist "%VCINSTALLDIR%INCLUDE" set INCLUDE=%VCINSTALLDIR%INCLUDE;%INCLUDE%

        @rem LIB
        @rem ---
        @if exist "%VCINSTALLDIR%ATLMFCLIB" set LIB=%VCINSTALLDIR%ATLMFCLIB;%LIB%;D:STLportuildlib
        @if exist "%VCINSTALLDIR%LIB" set LIB=%VCINSTALLDIR%LIB;%LIB%

        保存之后,双击执行该文件(vcvars32.bat),执行成功后会提示如下内容:

        D:Program Files (x86)Microsoft Visual Studio 10.0VC>vcvarsall.bat
        Setting environment for using Microsoft Visual Studio 2010 x86 tools.

      (3)编辑_cstdlib.h

        该文件的位置位于解压路径:D:STLportstlportstl

        将该文件中第158行的内容,如下所示:

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

        更改位前后加上条件判断语句,修改后的内容如下所示:

        #if !defined( _STLP_MSVC ) || ( _STLP_MSVC < 1600 )
        inline _STLP_LONG_LONG abs(_STLP_LONG_LONG __x) { return __x < 0 ? -__x : __x; }
        #endif

      (4)编译STLport

        在“开始”菜单中选择“Microsoft Visual Studio 2010”文件夹下的“Visual Studio Tools”文件夹中的“Visual Studio 命令提示符(2010)"工具;
        然后将命令行的路径切换到:D:STLport;

        执行命令:configure msvc9

        然后切换到:D:STLportulidlib

        执行命令:nmake /f msvc.mak clean install

    4.配置与测试

      (1)将D:STLportin文件加中的三个动态库:

        stlport.5.2.dll

        stlportd.5.2.dll

        stlportstld.5.2.dll

        拷贝到如下路径中:

        D:Program Files (x86)Microsoft Visual Studio 10.0VCin

      (2)将STLport的include(头文件)和lib(库文件)包含在vs 2010的配置中,最好的方法是进行永久配置,好让每次新建的工程都能使用这些配置,而不用每个工程都添加这些配置。方法如下所示:

        在vs2010中 “视图”菜单->“属性管理器”->"Debug|Win32"->"Microsoft.Cpp.Win32.user",然后在“常规”选项卡中的“包含目录”中增加“D:STLportstlport”路径,在“库目录”中增加“D:STLportlib”路径。

        在使用STLport过程中,可以使用不同的宏在决定使用动态链接或是静态链接STL。

          #define _STLP_USE_BOOST_SUPPORT //STLport 与 Boost 库配合使用  

          #define _STLP_USE_STATIC_LIB      //静态链接STLport

          #define _STLP_USE_DYNAMIC_LIB     //动态链接STLport

          #define _STLP_DEBUG         //Debug调试模式

       (3)新建C++工程测试,测试代码如下所示:

         因为STLport在标准之外增加了若干有用的扩展,如rope(增强的字符串类),所以我们就使用crope来测试我们的STLport是否安装成功。

        #include <iostream>  

         #include <rope>   

         int main( int argc, char *argv[] )  

         {

               std::crope myrope( "Hello world!" );

            std::cout << myrope << std::endl;  

               system("pause"); 

           return 0;  

        } 

        如果真确输出,则表示安装配置成功。

  • 相关阅读:
    Oracle: 一个很让人纠结的sql问题,给自己长个记性
    TextInfo list of CultureInfo
    一个简单的面试题称粮食
    C++ 中什么是内联函数(zhuan)
    C/C++ 到 shellcode 过程
    常量指针与指针常量的区别(转帖)
    分清函数指针和指针函数
    如何编写自己的缓冲区溢出利用程序? (zz)
    动态获取API函数地址对抗win7 aslr安全机制(转)
    暴力搜索内存空间获得 Api 的线性地址
  • 原文地址:https://www.cnblogs.com/wanghaiyang1930/p/4052139.html
Copyright © 2020-2023  润新知