贝壳最近在用库上吃了不少苦头,先是crypto++5.52。编译后怎么也链接不上。后来发现需要用/MT参数编译为多线程。后来又在STLport上又吃一次苦头,可见VC2003的默认单线程模式确实不得人心。

下面说一下STL的编译手记。下载STLport,解压。运行vcvars32.bat设置环境变量,去build/lib下面,运行 configuare -c msvc71(如果你是2003,否则按configuare –help察看你的编译器类型)。然后运行nmake -f msvc.mak install。可以看到有两个目录被建立了,bin和lib。把bin的复制到windows/system32下面,把lib的复制到系统目录下面。 安装就OK了。

上述和boost都差不多,然而和boost不一样的是,编写程序的时候,需要手工指定stlport的头文件路径。boost的可以以<>来引入,因此boost的头可以复制到系统里面去。然而stlport的必须以手工方式指定,否则就要覆盖默认的stl 了。