VS2010 安裝 Boost 庫 1.54

pamxy發表於2013-08-06

轉自:http://blog.csdn.net/xzz_hust/article/details/9365511

Boost庫被稱為C++準標準庫, 功能很是強大, 下面記錄我在VS2010中安裝使用Boost庫的過程.

首先上官網http://www.boost.org/下載最新的Boost庫, 我的版本是1_54_0版本, 解壓下載的檔案到任一資料夾, 

我放D盤boost目錄下. 之後開始-執行-cmd開啟dos視窗, 進入到boost庫根目錄下, 使用如下命令

cd D:\boost\boost_1_54_0

boost庫中有一部分可以不需要編譯就可以使用, 因為其功能直接在標頭檔案使用模板和inline函式實現, 具體哪些

可以檢視文件, 另外一部分則需要編譯成外部庫使用. 編譯方法如下(官方文件中提供的方法): 

執行下面兩條命令:

bootstrap
.\b2

第一條命令是準備boost編譯環境, 第二條命令是編譯boost庫. 第二條命令則是編譯, 其引數可以檢視這裡Boost.Build documentation.

編譯過程比較慢, 20分鐘以上, 慢慢等待. 編譯之後的boost資料夾大概有2個多G.


在VS2010中使用boost也很簡單, 下面是使用方法:

1、Properties > C/C++ > General > Additional Include Directories這裡設定包含標頭檔案的路徑

例如:D:\boost\boost_1_54_0(到Boost目錄的上一級)

2、Properties > C/C++ > Precompiled Headers,:Not Using Precompiled Headers:禁用標頭檔案

3、Properties > Linker > General > Additional Library Directories新增包含的庫目錄

例如:D:\boost\boost_1_54_0\stage\lib


驗證是否安裝成功請新建工程example, 設定好屬性後編譯下面的程式:

  1. #include <boost/regex.hpp>  
  2. #include <iostream>  
  3. #include <string>  
  4.   
  5. int main()  
  6. {  
  7.     std::string line;  
  8.     boost::regex pat( "^Subject: (Re: |Aw: )*(.*)" );  
  9.   
  10.     while (std::cin)  
  11.     {  
  12.         std::getline(std::cin, line);  
  13.         boost::smatch matches;  
  14.         if (boost::regex_match(line, matches, pat))  
  15.             std::cout << matches[2] << std::endl;  
  16.     }  
  17. }  

然後將下面的內容儲存為test.txt測試檔案

[plain] view plaincopy
  1. To: George Shmidlap  
  2. From: Rita Marlowe  
  3. Subject: Will Success Spoil Rock Hunter?  
  4. ---  
  5. See subject.  
在dos視窗執行編譯好的.exe檔案, 將test.txt文字內容重定向為輸入.

path\to\compiled\example < path\to\test.txt
如果輸出如下:

Will Success Spoil Rock Hunter?

則表示安裝成功. Good Luck!


相關文章