在VS2005中安裝Boost

引用 http://paul216.blog.hexun.com/29507251_d.html 中介紹的方法啦,希望引用他的方法沒有侵犯到版權呢。

 

編譯環境:Windows XP SP3 vs2005 版本8.0.50727.42

首先在www.boost.org下載jam和boost最新的源代碼(本文爲jam_version=3.1.17 boost_version=1.38.0),將jam源代碼解壓到x:/boost/jam/目錄下,將boost源代碼解壓縮到x:/boost/目錄下。
然後打開Visual Studio 2005 命令提示來到x盤下進入jam的src目錄,下面有個build.bat文件。
在命令行輸入build msvc 8.0,執行完成後會在該目錄下生成一個bin.ntx86的目錄,將目錄中的bjam.exe拷貝到x:/boost/目錄下.
現在將命令行定位到x:/boost編譯時通過設置參數可以指定編譯器和編譯版本以及存放路徑這裏沒喲編譯python.
bjam --toolset=msvc-8.0 --prefix=x:/boost stage
這個命令將會生成release版的lib和dll文件
bjam --toolset=msvc-8.0 --prefix=x:/boost debug stage
這個命令將會生成帶gd字符的debug版的lib和dll文件
bjam --tooset=msvc-8.0 --prefix=x:/boost debug runtime-link=static stage
這個命令將會生成帶sgd字符的靜態debug版的lib和dll文件

如果不是用--prefix參數將默認生成在c:/boost目錄下

編譯完成後可以建立一個bat文件自動將生成的lib和dll文件拷貝到lib目錄下面
cplib.bat

dir /W/S/B *vc80*.lib,*vc80*.dll >liblist
if exist lib (echo exist lib fold) else (mkdir lib)
for /f %%x in (liblist) do @copy "%%x" lib/

拷貝之後可以做一下清理工作,同個建立一個bat文件來自動清理編譯過程產生的.obj文件
delobj.bat

del /s/q *.obj

將這兩個文件放在x:/boost目錄下執行就可以了。

在編譯過程中會自動生成三個文件夾,按生成先後順序分別是include,bin.v2,lib其中include目錄是編譯時用到的頭文件,bin.v2目錄是編譯時存放lib,dll和obj文件的地方,lib目錄是存放編譯完成後的所有lib,dll文件的目錄。如果空間十分緊張,可以刪除include和bin.v2目錄。我在實際操作中沒有include文件,但是有個stage文件夾,有1.55G我覺得太佔用空間,就刪除了。

 

配置環境變量

 

Tools -> Options -> Projects and Solutions -> VC++ Directories 在Library files加上x:/boost/lib

在Include files加上x:/boos

 

測試程序:

 

#include <iostream>

#include <string>

#include <boost/algorithm/string.hpp>

#include <boost/algorithm/string_regex.hpp>

using namespace std;

using namespace boost;

int main() {   

  string s = "    Hello boost!! ";     trim(s);    

  cout << s << endl;

    getchar();  

      std::string regstr = "a+";

      boost::regex expression(regstr);  

     std::string testString = "aaa";

      // 匹配至少一個a    

   if( boost::regex_match(testString, expression) )     

  {           std::cout<< "Match" << std::endl;       }     

  else    

   {           std::cout<< "Not Match" << std::endl;       }

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章