win7+VS2008安装boost
找了好久boost的安装教程,杂七杂八的方法有很多,说直接下载boost安装包installer,但是boostpro.com貌似挂了...所以最后还是得自己上阵,重新编译,方法综合了几个,最后终于搞定了(某些细节部分也是自己尝试成功,也有相应说明)。

2. 添加路径到系统:
将boost的path添加到系统,右击计算机-->“属性”-->“高级”-->“环境变量”-->选择“系统变量”-->变量名:BOOST_ROOT(自己随便取名),变量值:C:\Program Files (x86)\boost\boost_1_57_0(就是boost安装的路径)
注:在环境变量中,“用户变量”和“系统变量”的区别就在于用户变量只针对你现在用的这个账户user有效,而系统变量添加之后对于all users都有效,建议使用系统变量添加路径。
3.设置VS的配置:
打开VS,选择菜单“工具”->“选项”->“项目和解决方案”->“VC++目录”
首先要下载boost包,我下载的版本是boost_1_57_0.zip,下载完之后放在你想安装的安装路径下。
1.boost安装及编译
- 解压boost_1_57_0.zip;
- 打开 Visual Studio 2008 命令提示(在安装了VS2008前提下,点击 主菜单-->所有程序-->Microsoft Visual Studio 2008-->Visual Studio Tools-->Visual Studio 2008命令提示),如图
- 切换路径到boost_1_47_0根目录,里面有一个bootstrap.bat的文件(由于我用的是apple PC, 直接出来的是C:\apple\user,我安装路径是C盘,需要跳到C盘根目录,输入"cd/"即可;如果要跳入另外的盘,输入"cd d:\"即可,如果还要继续进入里面的目录,也是"cd (文件夹名\子文件夹\...)")
- 运行bootstrap.bat,生成b2.exe(直接在命令行输入"bootstrap"即可,会自动运行该文件,这个过程很快,几秒钟的时间,就会发现boost_1_47_0目录下多了一个b2.exe的文件)
- 运行b2.exe(命令输入"b2 --toolset=msvc-9.0 --build-type=complete"),编译出指定的boost库(这个过程很漫长,需要耐心等待,我的apple PC足足编译了1小时orz...)
-
其中“--toolset=msvc-9.0”表示编译成VS 9.0版本,因为VS 2008为VS 9.0版本,如果是VS 2010,则用“--toolset=msvc-10.0”参数。
编译是很漫长的过程,如果你只需要使用Boost库的一部分,可以选择性地编译。比如你只想用system,thread库,则输入:
- b2 --toolset=msvc-9.0 --with-system -with-thread
- 编译成功后,生成的库文件所在目录:\boost_1_47_0\stage\lib
2. 添加路径到系统:
将boost的path添加到系统,右击计算机-->“属性”-->“高级”-->“环境变量”-->选择“系统变量”-->变量名:BOOST_ROOT(自己随便取名),变量值:C:\Program Files (x86)\boost\boost_1_57_0(就是boost安装的路径)
注:在环境变量中,“用户变量”和“系统变量”的区别就在于用户变量只针对你现在用的这个账户user有效,而系统变量添加之后对于all users都有效,建议使用系统变量添加路径。
3.设置VS的配置:
打开VS,选择菜单“工具”->“选项”->“项目和解决方案”->“VC++目录”
- 库文件(library) 添加路径 C:\Program Files (x86)\boost\boost_1_57_0\stage\lib
- 包含文件(include) 添加路径C:\Program Files (x86)\boost\boost_1_57_0
测试
1 #include <iostream> 2 #include <boost/thread/thread.hpp> 3 4 using namespace std; 5 6 void printBook() 7 { 8 cout << "1984 - George Orwell" << endl; 9 } 10 11 int main() 12 { 13 boost::thread myThread(&printBook); 14 myThread.join(); 15 16 return 0; 17 }
参考: