Posted on 2011-05-18 15:57
達(dá)文兄 閱讀(2185)
評(píng)論(1) 編輯 收藏 引用
很早以前就已經(jīng)有想法從boost剝離一些自己使用的東西出來(lái),方便加到團(tuán)隊(duì)開(kāi)發(fā)的庫(kù)里頭(因?yàn)閎oost加到CVS,SVN的話實(shí)在太龐大)各自安裝又 可能不一致。但是其中的依賴關(guān)系實(shí)在難以理清。離開(kāi)boost好久,終于今天又回來(lái),已經(jīng)到了1_46_1(光陰飛逝啊,上一次用的時(shí)候還是 1_33_1)。驚喜的發(fā)現(xiàn)tools里面有一個(gè)bcp的項(xiàng)目,正是偶需要的東西。
二話不說(shuō),實(shí)干:
1.編譯bjam,比以前方便多了,直接執(zhí)行boost_1_46_1\bootstrap.bat,自動(dòng)找到我裝的msvc10(小聲點(diǎn),最近打擊得很厲害啊),成功編譯。
2.到控制臺(tái),進(jìn)入boost_1_46_1\tools\bcp下執(zhí)行..\..\bjam,又成功。
3.。。。。。 在boost_1_46_1目錄下執(zhí)行.\dist\bin\bcp shared_ptr miniboost (沒(méi)錯(cuò),我最常用的智能指針,miniboost目錄要預(yù)先建好,mkdir miniboost),很快,成功了。將miniboost加到項(xiàng)目的include就可以使用了。
最后,為了完整,我把shared_array,scoped_ptr,scoped_array,weak_ptr (也就是整個(gè)smart_ptr,還有一個(gè)沒(méi)用過(guò),不加了),好樣的,300多個(gè)文件!
比3萬(wàn)多個(gè)文件還是好很多了。
問(wèn)題:那個(gè)可以告訴我怎么指定使用msvc9 or 8?因?yàn)椋业沫h(huán)境其實(shí)安裝了msvc10和msvc9,開(kāi)發(fā)用9,平時(shí)自己用10
貌似bjam --toolset=msvc9不過(guò)哦~,竟然找不到以前的(boost_1_33_1)說(shuō)明的那些toolset了,記得當(dāng)時(shí)可以具體指定到某個(gè)版本的toolset的。
題 外:經(jīng)理說(shuō)boost太龐大了,不敢用了,不許用!這次,不知道能不能說(shuō)服經(jīng)理呢?至少不要用他自己實(shí)現(xiàn)的智能指針,曾經(jīng)被智能指針(貌似還是某個(gè)巨頭寫(xiě) 的)的線程安全問(wèn)題搞得頭疼的人傷不起啊~~,用shared_ptr從來(lái)沒(méi)出過(guò)問(wèn)題,安全就是生命啊,程序員的生命如此短暫,放過(guò)我們吧!