• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            posts - 28, comments - 179, trackbacks - 0, articles - 1
              C++博客 :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

            boost1.34.0編譯日志

            Posted on 2007-06-06 17:04 chemz 閱讀(2189) 評(píng)論(11)  編輯 收藏 引用 所屬分類(lèi): C++
                                            boost1.34.0編譯日志
                經(jīng)歷了將近一年半的時(shí)間boost終于發(fā)布了1.34.0版本(前版本1.33.1發(fā)布于2005/12),
            其編譯方法和原來(lái)的編譯方法基本上是一致的,主要改變是bjam的toolset所提供的參數(shù)名稱(chēng)
            的改變,而由于這個(gè)版本并沒(méi)有提供任何文檔說(shuō)明不同的編譯環(huán)境應(yīng)該使用什麼樣的toolset
            名稱(chēng),使用原有的名稱(chēng)是不能夠正常編譯的,同時(shí)為了使得regex庫(kù)能夠通過(guò)ICU庫(kù)支持Unicode,
            在編譯上需要有一些特殊的選擇。我在Visual Studio 2005 Pro + SP1環(huán)境下編譯了該庫(kù),
            為了避免走彎路所以將其編譯的方法進(jìn)行說(shuō)明,以方便大家編譯。
                由于boost是采用其自己的bjam工具通過(guò)命令行進(jìn)行編譯的,所以必須在Windows下開(kāi)啟
            console窗口,同時(shí)必須將Visual Studio中C++目錄下的環(huán)境vcvarsall.bat配置腳本運(yùn)行一
            遍,以設(shè)置好VC的編譯器環(huán)境變量。
                1. 編譯不帶ICU支持的boost庫(kù)
                   此種情況下的boost庫(kù)編譯起來(lái)比較的簡(jiǎn)單,在準(zhǔn)備好的console窗口中輸入:
                       bjam --without-python --toolset=msvc-8.0 stage
                   就可以了,如果要安裝的話則輸入:
                       bjam --without-python --toolset=msvc-8.0 install
                       
                2. 編譯具有ICU支持的boost庫(kù)
                   首先我們必須編譯ICU庫(kù)才能夠編譯boost庫(kù),在準(zhǔn)備好的console窗口中輸入:
                       bjam -sICU_PATH=d:\ICU --without-python --toolset=msvc-8.0 stage
                   就可以了,如果要安裝的話則輸入:
                       bjam -sICU_PATH=d:\ICU --without-python --toolset=msvc-8.0 install
                通過(guò)上面的方法可以很正常完成boost各種需要版本的關(guān)系。
             
            注:
                最近1.34.1也已經(jīng)發(fā)布了,其編譯方法完全相同。

            Feedback

            # re: boost1.34.0編譯日志[未登錄](méi)  回復(fù)  更多評(píng)論   

            2007-06-06 17:31 by pass86
            我編譯了一次1.33.1,只是復(fù)制了些頭文件到我的目標(biāo)我的文件架,沒(méi)有生成。LIB文件,是怎么回事情呢,用的是。NET 2003選項(xiàng),能夠給我發(fā)個(gè)
            。NET2003的編譯明命令行嗎,謝謝。
            pass86@gmail.com

            # re: boost1.34.0編譯日志  回復(fù)  更多評(píng)論   

            2007-06-06 17:53 by chemz
            在Visual Studio.NET 2003下編譯boost1.33.1的命令行:
            bjam "-sTOOLS=vc-7_1" stage
            就可以了,只是這個(gè)版本的regex庫(kù)中有一個(gè)文件中包含了非法的注釋字符串,會(huì)導(dǎo)致編譯錯(cuò)誤。
            具體解決辦法如下:
            libs/regex/src/目錄下的一個(gè)regex_traits_defaults.cpp文件中包含有ANSI編碼無(wú)法包含的字符集,所以會(huì)導(dǎo)致編譯的時(shí)候出現(xiàn)錯(cuò)誤,要解決該問(wèn)題可以將該文件用notepad.exe程序打開(kāi),將其中的/*?/字符串替換掉就可以了,對(duì)于VC8還要將config/compiler目錄下的visualc.hpp文件中的第58行移動(dòng)到71行的下面。

            # re: boost1.34.0編譯日志  回復(fù)  更多評(píng)論   

            2007-06-06 22:17 by 空明流轉(zhuǎn)
            如果像你那么編譯VC8下會(huì)由于Safe Code,編譯和性能上都會(huì)很難看。
            補(bǔ)充說(shuō)明可以翻看我的blog關(guān)于boost 1340的問(wèn)答。

            # re: boost1.34.0編譯日志  回復(fù)  更多評(píng)論   

            2007-06-06 22:26 by pass86
            我把/*?/去掉了,代會(huì)編譯試試。

            # re: boost1.34.0編譯日志  回復(fù)  更多評(píng)論   

            2007-06-07 09:07 by chemz
            "空明流轉(zhuǎn)"提到編譯上由于Visual C++2005的Safe Code會(huì)產(chǎn)生很多的警告信息,不會(huì)對(duì)代碼產(chǎn)生任何的影響,關(guān)掉這些警告可能會(huì)比較的順眼,謝謝!

            # re: boost1.34.0編譯日志  回復(fù)  更多評(píng)論   

            2007-06-07 12:37 by 空明流轉(zhuǎn)
            80下會(huì)有影響。80的stl很惡心的默認(rèn)為safe code,速度要比全速的時(shí)候慢50%

            # re: boost1.34.0編譯日志  回復(fù)  更多評(píng)論   

            2007-06-07 14:00 by pass86
            bjam "sTOOLS=vc-7_1" --prefix=D:\Boost install
            編譯中無(wú)法找到windows.h

            完成結(jié)果
            ...failed updateing 244 targets...
            ...skiped 228 targets...
            ...updated 1022 targets...

            WHY?

            LIB文件夾下有102個(gè)項(xiàng)目。

            # re: boost1.34.0編譯日志  回復(fù)  更多評(píng)論   

            2007-06-07 14:03 by chemz
            bjam "sTOOLS=vc-7_1" --prefix=D:\Boost install
            你的命令寫(xiě)錯(cuò)了看到?jīng)]有,仔細(xì)對(duì)比一下;
            無(wú)法找到windows.h應(yīng)該是VC的環(huán)境變量沒(méi)有運(yùn)行的原因

            # re: boost1.34.0編譯日志  回復(fù)  更多評(píng)論   

            2007-06-07 16:36 by pass86
            搞定,原來(lái)是我用的vsvars32.bat應(yīng)該在一個(gè)控制臺(tái)下完成,因?yàn)樗辉诋?dāng)前控制臺(tái)中設(shè)置的環(huán)境變量生效。
            LIB下生成了216個(gè)項(xiàng)目,1.2G。

            # re: boost1.34.0編譯日志  回復(fù)  更多評(píng)論   

            2007-06-07 16:45 by pass86
            ...updated 5279 targets...

            # re: boost1.34.0編譯日志  回復(fù)  更多評(píng)論   

            2007-07-23 13:20 by pass86
            1.34.0用MinGW編譯貌似有問(wèn)題,
            為什么沒(méi)有發(fā)發(fā)現(xiàn)boost_1_34_0\tools\build下有v1呢?
            久久久久成人精品无码| 久久国产精品无码一区二区三区| 午夜天堂av天堂久久久| 久久精品无码专区免费青青 | 无码AV波多野结衣久久| 9999国产精品欧美久久久久久| 国产精品美女久久久网AV| 伊人久久大香线蕉综合Av| 国产精品热久久无码av| 97久久香蕉国产线看观看| 四虎久久影院| 久久精品无码一区二区三区日韩 | 亚洲精品97久久中文字幕无码| 久久国产AVJUST麻豆| 久久丝袜精品中文字幕| 狠狠色综合久久久久尤物| 99久久成人18免费网站| 久久伊人精品青青草原高清| 国产精品99精品久久免费| 久久精品人人做人人爽电影蜜月| 亚洲婷婷国产精品电影人久久| 久久亚洲高清综合| 亚洲狠狠婷婷综合久久蜜芽| 亚洲中文字幕无码久久2017| 久久久久久国产精品美女| 久久er99热精品一区二区| 精品欧美一区二区三区久久久 | 久久久久亚洲av成人无码电影| 丰满少妇人妻久久久久久4| 思思久久99热免费精品6| 久久综合亚洲欧美成人| 成人国内精品久久久久影院VR| 久久久精品波多野结衣| 国产Av激情久久无码天堂| 麻豆av久久av盛宴av| 久久综合狠狠综合久久激情 | 久久亚洲精品无码aⅴ大香| 久久99精品国产麻豆蜜芽| 国产一区二区三区久久| 久久久久亚洲AV无码网站| 久久夜色精品国产www|