日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

如何在WINDOWS下編譯BOOST C 庫

 @IT小小鳥@ 2012-03-16

寫出來,怕自己以后忘記了,也為初學(xué)者參考。使用VC8.0和boost1.35.0。
 
1)下載boost
這是它的下載頁面,需要下載2個(gè)東西:
Packaged Releases
VERSION 1.35.0
Boost Jam 3.1.16
 
你需要在每個(gè)條目下面找到Details | Download字樣,點(diǎn)擊Download,進(jìn)入下載頁??墒沁z憾的是sourceforge站點(diǎn)被封了,所以通常你是無法下載的。(我詛咒封這個(gè)站點(diǎn)的人)。因此有必要使用某些特殊的工具來穿透這個(gè)封鎖。我下載的是這個(gè):
boost_1_35_0.tar.gz
boost-jam-3.1.16.zip
 
2)下載Python2.5.2
在這個(gè)頁面點(diǎn)擊Python2.5.2 Windows Installer
得到一個(gè)Python2.5.2.msi后,即可點(diǎn)擊安裝。我安裝在C:/OpenSource/Python25
創(chuàng)建一個(gè)批處理文件:pt.bat,內(nèi)容如下:
set path=C:/OpenSource/Python25
Python
 
然后啟用命令行工具(運(yùn)行cmd.exe),進(jìn)入pt.bat所在目錄,鍵入pt.bat
如果你看到>>>的提示符號,說明python安裝成功。
 
3)編譯boost-jam
解壓boost_1_35_0.tar.gz,到目錄boost_1_35_0。我的是在C:/OpenSource/ boost_1_35_0。這樣你在C:/OpenSource/ boost_1_35_0/下就能發(fā)現(xiàn)boost-build.jam這個(gè)文件。
 
解壓boost-jam-3.1.16.zip,然后在目錄下雙擊build.bat,即進(jìn)行編譯。編譯結(jié)束,可以發(fā)現(xiàn)生成了bin.ntx86/bjam.exe。
我們要的就是這個(gè)bjam.exe,把它復(fù)制到boost_1_35_0目錄下,在這個(gè)目錄下有boost-build.jam文件。
 
4)完全編譯boost_1_35_0
編譯全部庫。雖然你可以只編譯一部分,但是還是全部編譯,省的以后麻煩。為此你需要編寫一個(gè)批處理文件,我命名它為boost.bat:
SET MSVC_ROOT="F:/Microsoft Visual Studio 8/VC"
SET VISUALC="F:/Microsoft Visual Studio 8/VC"
SET JAM_TOOLSET=VISUALC
SET PYTHON_ROOT=C:/OpenSource/Python25
SET PYTHON_VERSION=2.5.2
SET PATH=C:/OpenSource/boost_1_35_0
 
你要保證你的路徑是正確設(shè)置的。然后把這個(gè)文件保存到C:/OpenSource下面。(其實(shí)位置不重要)。然后啟用命令行工具(cmd)。類似地輸入下面的命令(<Enter>表示回車):
C:/OpenSource>boost.bat<Enter>
C:/OpenSource>cd boost_1_35_0<Enter>
C:/OpenSource/boost_1_35_0>bjam -sBOOST_ROOT=. -sTOOLS=msvc<Enter>
 
然后你就等待吧。一大堆的警告是不要管的。估計(jì)等1小時(shí)不到的時(shí)間,就完全編譯好了。你可以發(fā)現(xiàn)在C盤出現(xiàn)了:
C:/Boost
它下面有Include和Lib目錄。你可以使用這個(gè)C:/Boost,使用它的靜態(tài)或動(dòng)態(tài)庫。也可以使用C:/OpenSource/boost_1_35_0下的源代碼。
 
5)結(jié)束也是開始BOOST之旅
好了,開始你的boost之旅吧。我用它的graph庫實(shí)現(xiàn)了最短路徑,整個(gè)上海的路網(wǎng),4萬多條路段,任意2點(diǎn)查詢最短路徑,不超過3秒就OK。內(nèi)存消耗在30M左右。從此我喜歡上了boost。
最新的BOOST提供了C++和Python的接口,這也是我要用它的理由。一個(gè)簡單的比喻,C++好比COM,Python好比JavaScript,如果你認(rèn)為JavaScript調(diào)用COM可以產(chǎn)生強(qiáng)大的威力,是原子彈的話,那么Python調(diào)用C++則是氫彈。關(guān)于Boost.Python的知識(shí),參考:
當(dāng)然,我還是覺得上述過程太復(fù)雜,在Windows上使用Boost,你可以完全忽略上面的過程,到下面這個(gè)鏈接里直接取得一個(gè)下載軟件,它會(huì)給你下載你要的包:

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多