6.0 下編譯
http://hi.baidu.com/xy_zer0/blog/item/b2f575dff3ab3e5894ee37b2.html
boost是一個比較全面的類庫,比較強大,但是呢,要下載回來自己編譯,目前最新版本為boost_1_43_0.可下載回來死活編譯不出來結果,網上搜尋的結果有些人說是不支援vc6.0.具體的為什麼不能編譯弄了一早上沒搞明白。最後沒辦法只能下載一個1_34_1版本的,可以編譯。正在高興中。。。開啟一個工程加上標頭檔測試,誰知道“LINK : fatal error LNK1104: cannot open file "libboost_regex-vc6-sgd-1_34_1.lib"”真他*的快瘋了。又繼續搜尋相關出錯資料,大部人又說這個版本有問題,很多人都建議下1_34_0的。下載回來之後編譯通過,再然後加到工程測試,聽到vc6.0“當”的一聲,總算搞定了,vc6.0不支援Regex,想要做點小事情,還有搞boost那麼大的東西來,鬱悶至極。。。順道把1_34_0安裝的方法給記錄一下。總結網上的一些方法,都是東湊一點西湊一點才編譯安裝成功的。此版本為:http://nchc.dl.sourceforge.net/sourceforge/boost/boost_1_34_0.zip
1.解壓到如D:\boost_1_34_0. 2.進入cmd,轉到D:\boost_1_34_0\libs\regex\build此目錄下。之後把C:\Program Files\Microsoft Visual Studio\VC98\Bin(vc6.0安裝目錄)下的VCVARS32.BAT拖放到cmd視窗裡面然後斷行符號。然後在cmd輸入nmake -f vc6.mak 過一會產生一些dll跟lib,產生完之後再輸入namke -fvc6.mak install 其實就是把產生出來的一些dll跟lib copy到vc6.0相應安裝目錄下面去。最後就自己在工程裡面引入D:\boost_1_34_0就OK了。。
vs2008 下編譯
http://hi.baidu.com/diwayou/blog/item/e2ad363fc72a6ce054e723b9.html/cmtid/a821be778055d415b151b967
按照下面的方法編譯,可能是把所有的庫都編譯了,編譯後比較大有2G
下載boost庫
(最好去官網下,一般有SGI(GCC+用的較多)和BOOST之分,VS下用BOOST)
http://dl2.csdn.net/fd.php?i=21242861316189&s=39836e47ecfaa50a8b9208b6ecd5c798
下載boost_1_34_1(最新版本執行方法一樣,改下名字即可)壓縮檔,解壓縮 到d:\boost_1_34_1\(可以任何位置,你覺得合適就可以)目錄下
1.編譯bjam
從開始->程式->Microsoft Visual Studio 2008->Visual Studio Tools->Visual Studio 2008 命令提示(一定要從這進),命令提示cd到d:\boost_1_34_1\tools\jam\src下執行build.bat,會在d: \boost_1_34_1\tools\jam\src\bin.ntx86\產生 bjam.exe,把bjam.exe複製到 d:\boost_1_34_1\下。
2.編譯boost
命令提示cd到d:\boost_1_34_1\下執行
bjam --without-python --toolset=msvc-9.0 --prefix=d:\boost install
參數說明
--without-python 表示不使用 python
--toolset : 所使用compiler,Visual Studio 2008為msvc-9.0
--prefix:指定編譯後library的安裝目錄
這一步要花很長時間(大約20分鐘),看你的電腦速度
3.設定vs2008環境
啟動vs2008->工具->選項-> 項目和解決方案 -> VC++目錄
下拉 庫檔案 加上d:\boost\lib
下拉 包含檔案 加上d:\boost\include\boost-1_34_1
這樣基本已經完成了!
注意:如果發現libboost_regex-vc80-mt-gd-1_34_1.lib之類檔案
提示錯誤時,是找不到該檔案!
就到D:\boost\lib 把對應的檔案libboost_regex-vc90-mt-gd-1_34_1.lib改為 libboost_regex-vc80-mt-gd-1_34_1.lib(可以用記事本或者寫字板開啟,然後儲存)就可以一般是80和90的差別 (2005是80,2008是90)
以上方法沒問題,我都試過了。 只是給自己留個備份