編譯boost庫 boost_1_34

來源:互聯網
上載者:User

  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)

 

以上方法沒問題,我都試過了。 只是給自己留個備份

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.