win7+vs2008下安装配置STLport

win7+vs2008下安装配置STLport

转载自:http://www.ouchangjian.com/index.php/archives/492

 

STLprot是一个完全符合C++98标准的一个免费跨平台的C++标准库实现。

经测试,windows MSVC平台下,STLport的运行速度比VC8自带的STL(Dinkumware v405)大约块一倍,比VC9自带的STL(Dinkumware V503)快约10percent。

所以我们可以使用STLport代替MSVC自动的Dinkumware STL 进行windows平天下的开发。

此处摘自《Boost程序库完全开发指南》

1)STLport的下载

    STLPort官网(http://www.stlport.org/->Dowdload-> STLport Home at SourceForge->wait 5s)下载STLport-5.2.1.tar.bz2(最新版本为20081210发布的5.21版本),将压缩包里面的STLport-5.2.1文件夹全部文件解压到了D:\STLport,当然你也可以解压到其他路径。

2)STLport的编译

(STLport 的安装方法在STLport-5.2.1.tar.gz 解压后的STLport-5.2.1\INSTALL 文件中有详细说明。)

    1,打开开始菜单下的Visual Studio 2008 Command Prompt(开始->附件->vs2008->visual studio tools->vs2008命令提示)

    2,输入“d:”

    3,输入“cd d:/STLport”

    4,输入“configure msvc9” (VC6则改为msvc6 ;vs2005,vc8则改为msvc8.)

    5,输入“cd d:/STLport/build/lib”

    6,输入“nmake -f msvc.mak clean install”

    7,大约等几分钟编译完成后,回自动将编译出的dll和lib文件复制到新生成的lib和bin文件夹里面,此外也可以将STLport\build\lib\obj 文件夹(约318MB)删除一节约空间。

3)STlport的测试   

   再执行以下代码,通过则成功。 – under Windows:

    cd ../test/unit
    nmake install
    cd ../../../bin
    stl_unit_test
    stl_unit_testd
    stl_unit_teststld

   PS:

   在执行“nmake install”是会看到以下错误:  

错误提示:

../../../test/unit\ctype_facets_test.cpp : warning C4819: 该文件包含不能在当前代
码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
../../../test/unit\ctype_facets_test.cpp(430) : error C2001: 常量中有换行符
../../../test/unit\ctype_facets_test.cpp(430) : fatal error C1057: 宏展开中遇到
意外的文件结束
NMAKE : fatal error U1077: “”D:\Program Files\Microsoft Visual Studio 9.0\VC\BI
N\cl.EXE””: 返回代码“0×2”
Stop.

    可以将STLport/test/unit/ctype_facets_test.cpp中的:

     CPPUNIT_ASSERT( ct.is(ctype_base::mask(ctype_base::print | ctype_base::lower | ctype_base::alpha), ‘?) );
    改为 ↓
    CPPUNIT_ASSERT( ct.is(ctype_base::mask(ctype_base::print | ctype_base::lower | ctype_base::alpha), 0xE7) );

    此处错误处理转自:http://qos.mine.nu/wordpress/2009/10/stlport-521vs2008.html

    虽然还会出现几个warning ,但还是可以通过测试。


 

展开阅读全文

没有更多推荐了,返回首页