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.0\VC\bin (仅限本人机器)
(2)编辑vcvars32.bat文件
该文件的完整目录:D:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\vcvars32.bat
主要在该文件中添加STLport的include(头文件)路径和lib(库文件)路径,以便vs能找到我们所包含的文件,如:#include <string>。
修改后的内容如下所示:
@rem INCLUDE
@rem -------
@if exist "%VCINSTALLDIR%ATLMFC\INCLUDE" set INCLUDE=%VCINSTALLDIR%ATLMFC\INCLUDE;%INCLUDE%;D:\STLport\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\build\lib
@if exist "%VCINSTALLDIR%LIB" set LIB=%VCINSTALLDIR%LIB;%LIB%
保存之后,双击执行该文件(vcvars32.bat),执行成功后会提示如下内容:
D:\Program Files (x86)\Microsoft Visual Studio 10.0\VC>vcvarsall.bat
Setting environment for using Microsoft Visual Studio 2010 x86 tools.
(3)编辑_cstdlib.h
该文件的位置位于解压路径:D:\STLport\stlport\stl
将该文件中第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:\STLport\bulid\lib
执行命令:nmake /f msvc.mak clean install
4.配置与测试
(1)将D:\STLport\bin文件加中的三个动态库:
stlport.5.2.dll
stlportd.5.2.dll
stlportstld.5.2.dll
拷贝到如下路径中:
D:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\
(2)将STLport的include(头文件)和lib(库文件)包含在vs 2010的配置中,最好的方法是进行永久配置,好让每次新建的工程都能使用这些配置,而不用每个工程都添加这些配置。方法如下所示:
在vs2010中 “视图”菜单->“属性管理器”->"Debug|Win32"->"Microsoft.Cpp.Win32.user",然后在“常规”选项卡中的“包含目录”中增加“D:\STLport\stlport”路径,在“库目录”中增加“D:\STLport\lib”路径。
在使用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;
}
如果真确输出,则表示安装配置成功。
VS2010 安装使用STLPort的更多相关文章
-
osgearth+vs2010安装
转自:http://www.cnblogs.com/eaglezhao/archive/2011/09/26/2192389.html OSGEARTH + VS2010 安装 *VS 平台不重要,本 ...
-
英文VS2010安装中文版MSDN文档方法
英文VS2010安装中文版MSDN文档方法 2010-06-01 11:52 by 李永京, 51409 阅读, 50 评论, 收藏, 编辑 在2010年4月12号发布Visual Studio 20 ...
-
VS2010安装MSDN
VS2010正式版不再有单独的MSDN Library安装选项,以至于很多同学找不到本地的MSDN Library来用,其实VS2010的ISO安装光盘里已经包含有MSDN Library,只不过要手 ...
-
vs2010安装svn插件
vs2010安装svn插件及简单使用 1.下载安装程序,安装 2.配置vs2010 3.check out工程 1.下载安装程序,安装 2.配置vs2010 3.check out工程 Open th ...
-
VS2010安装OpenGL
以下涉及到的所有资源都在这里: 链接:https://pan.baidu.com/s/1eSctT5K 密码:174s *我的VS2010的安装位置:D:\Program Files (x86)\M ...
-
VS2010安装MVC3失败的解决方法
环境:Win 7 x64 原因:在安装MVC3之前,安装过VS2010 SP1,导致MVC3安装,找不到对于的VS2010安装器 vs_setup.msi 问题图片: 解决方法: 一.来自网络的方法 ...
-
[转]QT4.8.5+qt-vs-addin-1.1.11+VS2010安装配置和QT工程的新建和加载
1.下载windows下的QT库 QT4.8.5 for vs2010: http://download.qt-project.org/official_releases/qt/4.8/4.8.5/q ...
-
.net framework 4.0 在 VS2010 安装目录下位置 dotNetFx40_Full_x86_x64.exe在磁盘哪个目录?
.net framework 4.0 在 VS2010 安装目录下位置 dotNetFx40_Full_x86_x64.exe在磁盘哪个目录? 使用VS2010开发应用程序完毕后,在发布应用程序时,常 ...
-
【转】VS2010安装后出现无法使用帮助的解决方案
安装完VS2010后 再安装MSDN 打开“Help Library 管理器 - Microsoft Help 查看器 1.0” 提示“请为本地内容选择位置” 默认的位置是在“C:/Documents ...
随机推荐
-
安装php-amqplib(RabbitMQ的phpAPI)
历史经验告诉我们,装逼没有好下场. 总结一下之前composer安装php-amqplib包失败的原因: composer安装的时候需要指定PHP执行文件的位置: PHP安装路径:/usr/local ...
-
paip. dsl 编程语言优点以及 常见的dsl
paip. dsl 编程语言优点以及 常见的dsl 作者Attilax 艾龙, EMAIL:1466519819@qq.com 来源:attilax的专栏 地址:http://blog.csdn. ...
-
poj2752 KMP
需要理解next[]的意义.之前看到大牛的博客,next[]讲的非常清楚. 利用next[],当前位子的前面那一段和next[当前位子]的前面那一段是相同的.又next[next[当前位子]]与nex ...
-
《Pro AngularJS》学习小结-02
上一篇的项目只有一个单独的模板页面,加入了相应的controller,filter,使得页面上的数据能够动态的变化.现在我们开始建立并整合多个模板,加入购物车模块和结账checkout模块. 一.在页 ...
-
把复选框变成单选框(prop,attr的区别)
如果项目中需要统一样式的话,有可能会遇到把复选框变成单选框的需求. 下面是用jquery的简单实现 $(function(){ $("input[type='checkbox']" ...
-
struts2自己定义类型转换器
1.1. struts2自己定义类型转换器 1) 自定类型转换类,继承DefaultTypeConverter类 package com.morris.ticket.conversio ...
-
Spark源码分析 之 Driver和Excutor是怎么跑起来的?(2.2.0版本)
今天抽空回顾了一下Spark相关的源码,本来想要了解一下Block的管理机制,但是看着看着就回到了SparkContext的创建与使用.正好之前没有正式的整理过这部分的内容,这次就顺带着回顾一下. S ...
-
JS中数组的常用方法
首先,在开始前我们先了解一下什么是数组. 1.什么是数组? 数组就是一组数据的集合,其表现形式就是内存中的一段连续的内存地址,数组名称其实就是连续内存地址的首地址.说白了它就是将一堆数据按照一定的顺序 ...
-
MFC程序打包方法
目录 1. 新建工程 2. 设置信息 3. 其他设置 4. 生成安装包 1. 新建工程 在同一个解决方案下,新建一个Setup工程,工程名为SetupVSR. (1)在"解决方案资源管理器& ...
-
PCH 警告:标头停止点不能位于宏或#if块中
今天在vs2010写了点代码,居然报了“PCH 警告:标头停止点不能位于宏或#if块中”. /********************* * * * 文件夹: ▲01 绪论 * * * * 文件名: ...