• <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>

            woaidongmao

            文章均收錄自他人博客,但不喜標(biāo)題前加-[轉(zhuǎn)貼],因其丑陋,見諒!~
            隨筆 - 1469, 文章 - 0, 評論 - 661, 引用 - 0
            數(shù)據(jù)加載中……

            boost 編譯

            Boost歷史版本下載地址

            http://sourceforge.net/project/showfiles.php?group_id=7586&package_id=8041

             

            bat文件,boost 1.33.1 Python 2.2.1,可能需要重新安裝stl port, stl port版本有問題 

            ::如果不要編譯bjam.exe的話
            rem GOTO install

            cd C:\boost_1_33_1\tools\build\jam_src
            pause
            call build.bat
            pause
            copy C:\boost_1_33_1\tools\build\jam_src\bin.ntx86\bjam.exe C:\boost_1_33_1
            pause

            :install

            rem SET INCLUDE=\"C:\\STLport-4.6.2\\stlport\";%INCLUDE%
            rem SET LIB=\"C:\\STLport-4.6.2\\lib\";%LIB%
            SET MSVC_ROOT="C:\Program Files\Microsoft Visual Studio\VC98"
            SET VISUALC="C:\Program Files\Microsoft Visual Studio\VC98"
            SET JAM_TOOLSET=VISUALC
            SET PYTHON_ROOT=C:\Python22
            SET PYTHON_VERSION=2.2
            SET STLPORT_PATH=C:\STLport-4.6.2\lib
            SET STLPORT_VERSION=4.6.2
            cd c:\Program Files\Microsoft Visual Studio\VC98\bin
            pause

            call VCVARS32.BAT
            pause

            cd C:\boost_1_33_1
            pause

            ::stage代表 lib
            ::msvc-stlport是msvc-stlport-tools.jam文件,可以搜索得到
            ::--with-thread是只編譯thread庫,--without-thread則相反
            ::比如編譯thread 的lib庫如下行.
            rem bjam -sBOOST_ROOT=. -sTOOLS=msvc --with-thread stage

            ::編譯所有
            bjam -sBOOST_ROOT=. -sTOOLS=msvc-stlport install
            bjam -sBOOST_ROOT=. -sTOOLS=msvc install

            ::編譯regex
            rem bjam -sBOOST_ROOT=. -sTOOLS=msvc-stlport --with-regex install
            rem bjam -sBOOST_ROOT=. -sTOOLS=msvc --with-regex install

            ::編譯thread
            rem bjam -sBOOST_ROOT=. -sTOOLS=msvc-stlport --with-thread install
            rem bjam -sBOOST_ROOT=. -sTOOLS=msvc --with-thread install

            pause
            exit

             

             

             

            1、下載python-2.5.2.msi安裝到C:\Python25

            http://www.python.org/ftp/python/2.5.2/python-2.5.2.msi

            2、下載boost_1_35_0,解壓到C:\boost_1_35_0

            http://sourceforge.net/project/downloading.php?group_id=7586&use_mirror=nchc&filename=boost_1_35_0.zip&48604828

            3、執(zhí)行C:\boost_1_35_0\tools\jam\build_dist.bat

            4、生成了bjam.exe在:C:\boost_1_35_0\tools\jam\src\bin.ntx86\bjam.exe

            5、拷貝bjam.exe到C:\boost_1_35_0

            6、打開cmd,執(zhí)行:cd C:\boost_1_35_0

            7、執(zhí)行bjam --toolset=msvc -sPYTHON_ROOT="{C:\Python25}" install

            bjam --toolset=msvc-6.0 stdlib=stlport -sPYTHON_ROOT="{C:\Python25}" install

            等待半個小時左右

            8、將C:\boost_1_35_0\libs文件夾(里面是源代碼,lib_source),拷貝到C:\Boost,并更改名為boost_src,這樣就成了C:\Boost\boost_src

            9、把C:\Boost\include\boost-1_35_0\boost,加入到VC6的Include路徑,hpp也是C++的頭文件啊!Boost庫就是用的這個。

            10、將C:\Boost\include\boost-1_35_0\boost和C:\Boost\boost_src,加入到VC6的source路徑

            11、把C:\Boost\lib,加入到VC6的LIB路徑

            12、C:\boost_1_35_0這個文件夾可以刪除了,如果不想刪除,那么C:\boost_1_35_0\bin.v2這個是編譯時候的obj等文件,可以刪除掉。

            運行出現(xiàn)的錯誤

            1、預(yù)定義頭要加入:,D_STLP_DEBUG,__STL_DEBUG

            2、ZM limit 錯誤:工程->設(shè)置->C/C++選項卡下面有“工程選項”的一個命令區(qū)在命令行的末尾加上/Zm1000,改為/Zm2000也行,是整百的都可以

            3、“compiler   is   out   of   heap   space”,\ZM改成2000(最大了)

            4、“Fatal   Error   C1063”,這個錯誤是編譯器棧溢出,可能是你的程序單個源文件太大了,拆分成小一些的文件試試  
                  MSDN上:  
                  Fatal   Error   C1063  
                 compiler   limit   :   compiler   stack   overflow  
                  The   program   was   too   complex,   possibly   due   to   recursive   include   files.   Split   the   code   into   smaller   source   files   and   recompile.

            手動編譯boost::regex

            1、cmd;

            2、cd C:\boost_1_35_0\libs\regex\build

            3、vcvars32.bat

            4、SET STLPORT_PATH=C:\STLport\lib(如果需要以STLPort編譯的話)

            5、nmake -f vc6-stlport.mak(STLPort編譯)或者 nmake -f vc6.mak(普通編譯)

            用來測試的代碼,建立一個Win32 Console Application:

            #include "stdafx.h"
            #include <iostream>
            #include <boost/regex.hpp>
            #include <boost/thread.hpp>
            int main()

                // 3 digits, a word, any character, 2 digits or "N/A", 
                // a space, then the first word again
                boost::regex reg("\\d{3}([a-zA-Z]+).(\\d{2}|N/A)\\s\\1");   
                std::string correct="123Hello N/A Hello"; 
                std::string incorrect="123Hello 12 hello";   
                assert(boost::regex_match(correct,reg)==true); 
                assert(boost::regex_match(incorrect,reg)==false);
                boost::regex reg1("(new)|(delete)");
                boost::smatch m;std::string s=  "Calls to new must be followed by delete. \  Calling simply new results in a leak!";
                if (boost::regex_search(s,m,reg1))
                {  // Did new match? 
                    if (m[1].matched)   
                        std::cout << "The expression (new) matched!\n"; 
                    if (m[2].matched)   
                        std::cout << "The expression (delete) matched!\n";
                }
                return 0;
            }

            如果一切順利通過,恭喜你,boost安裝成功。

            vc6 上安裝stlport和boost庫

            用戶頭像

            1
            vc 6   sp5補丁  預(yù)處理補丁
            python2.2.3
            stlport4.5.3
            boost1.3.0.2
            2
            使用stlport的iostream,boost.python編譯失敗
            如果禁用stlportt的iostream,boost.regex編譯失敗
            選擇boost1.3.0.2的原因:

            http://engineering.meta-comm.com/boost.aspx
            得知Boost-wide regression reports
            vc6基本支持boost1.3.0.2 的全部庫
            而boost以后的版本,vc6 的表現(xiàn)可以說是慘不忍睹。
            boost1.3.0.2支持 python2.2 stlport 4.5.3
            基本就是這個樣子了。

            posted on 2008-04-19 01:55 肥仔 閱讀(1800) 評論(0)  編輯 收藏 引用 所屬分類: Boost & STL

            久久人人妻人人爽人人爽| 久久亚洲精品视频| 国产欧美久久久精品影院| 亚洲综合熟女久久久30p| 日韩久久久久久中文人妻| 69久久精品无码一区二区| 国产成人综合久久综合| 久久精品国产亚洲Aⅴ蜜臀色欲| 亚洲国产精品一区二区三区久久| 国内精品九九久久精品 | 久久久久av无码免费网| 91精品国产综合久久婷婷| 一97日本道伊人久久综合影院| 久久婷婷五月综合色高清| 久久久久亚洲AV成人网| 久久精品国产亚洲av麻豆小说 | 久久性精品| 久久66热人妻偷产精品9| 免费精品久久久久久中文字幕| 久久综合综合久久综合| 久久无码专区国产精品发布| 91久久福利国产成人精品| 久久久精品国产sm调教网站| 伊人久久五月天| 人妻无码久久精品| 91精品国产91热久久久久福利| 久久人人爽爽爽人久久久| 久久人人爽人人爽人人片AV东京热| 狠狠精品干练久久久无码中文字幕| 日日噜噜夜夜狠狠久久丁香五月 | 91精品国产综合久久精品| 国产成人无码精品久久久性色| 久久久久亚洲AV无码去区首| 国产香蕉97碰碰久久人人| 精品国产福利久久久| 国产精品久久永久免费| av午夜福利一片免费看久久| 久久精品国产久精国产思思| 久久精品国产亚洲AV无码麻豆| 国内精品久久人妻互换| 国产成年无码久久久久毛片|