近段時(shí)間以來(lái),一直在重溫一本老書(shū)——候捷老師的《STL 源碼剖析》。
書(shū)中附錄有
孟巖老師所寫(xiě)的《STLPort的移植經(jīng)驗(yàn)》。文中主要是VC++6的移植經(jīng)驗(yàn),不知其對(duì)VS2005是否有效。
于是,參照其文章,我試了試在VS2005下安裝,步驟如下:
(1)下載STLPort(你可以在
這里找到最新的版本)。
(2)下載完成后將得到一個(gè)ZIP文件,解壓之。假設(shè)保存于D:\STL4VS2005。
(3)打開(kāi)一DOS窗口。
(4)按照一說(shuō)明文件README.MSVC(在
D:\STL4VS2005\doc里)所說(shuō),我們?cè)贑MD里(D:\STL4VS2005\build\lib)使用configure --help命令,可以清楚看到如何在VS2005里編譯生成合適的STLport,如圖:
(5)對(duì)照孟巖的文章,我們需要先修改一下一個(gè)名為vcvars32.bat的文件。在VC6的時(shí)候,它比較單純,路徑大概在(C:\Program Files\Microsoft Visual Studio\VC98\)里,至于VS2005, 其稍顯復(fù)雜。我們?cè)谙鄳?yīng)這里找到這個(gè)文件(C:\Program Files\Microsoft Visual Studio 8\VC\bin),用任意一個(gè)文本編輯器打開(kāi),發(fā)現(xiàn)其內(nèi)容太簡(jiǎn)單了,只有一句話,呃,莫非弄錯(cuò)啦?看了看那句話,才知道,其具體內(nèi)容位于(C:\Program Files\Microsoft Visual Studio 8\Common7\Tools)里,打開(kāi),并修改為:
PS:現(xiàn)在在D:\STL4VS2005內(nèi)沒(méi)發(fā)現(xiàn)lib文件夾沒(méi)有關(guān)系,一會(huì)編譯STLport后,將會(huì)生成這個(gè)文件夾,并填充必要的內(nèi)容。
(6)在CMD里,運(yùn)行vcvars32.bat:
(7)然后,在(D:\STL4VS2005\build\lib)里運(yùn)行:
(8)由此,我們知道,我們應(yīng)該使用nmake /fmsvc.mak來(lái)生成合適版本的STLport,然后,使用nmake /fmsvc.mak install來(lái)安裝相應(yīng)的STLport。
至此,我們已經(jīng)完成了STLport在VS2005下的移植,稍后我們將使用一個(gè)測(cè)試程序來(lái)測(cè)試是否正確安裝成功。
值得一提的是,在(6),(7),(8)步中,有一個(gè)插曲。我第一次安裝的時(shí)候,使用了兩個(gè)CMD窗口分別完成上述的工作,其結(jié)果是得到一個(gè)CL發(fā)生致命性錯(cuò)誤的提示,百思不得其解,后來(lái),GOOGLE了一下,終于在一個(gè)不起眼的帖子里看到了解決方案,就是使用同一個(gè)CMD窗口完成上述的工作,就可以成功安裝,唉,莫名其妙~~~
驗(yàn)證程序我們沿用孟巖老師文章中的例子,稍作修改,如下:
終于成功完成了所有的步驟,接下來(lái),就可以在STL中暢游了~~~
使用STLport的一個(gè)結(jié)束語(yǔ)結(jié)束此隨便:
Have fun!
(#)