2006/11/16 下午 02:14:16
原則上要先使用build.bat, 產生bjam.exe, 再編繹出library. 由於各編譯器不同, lib並無法共用!

編譯完成後:
*.lib在 C:\Boost\Lin
*.hpp在 C:\Boost\include

VC++2005 && Dev-C++4.9.9.2 可以共用 include files!
BCB2006(or TC++2006) 必須獨立使用 include files!

需要在編譯器加入lib & include的 path, 使用Dev-C++要更費心將使用到的*.lib加入=>不然邊不出來!

********* boost 1.33.1 for VC++2005 *********
(1) 解壓 boost-build-2.0-m11.zip

>build.bat
(in \jam_src) to create bjam.exe(in \jam_src\bin.ntx86)

(2) 執行 boost_1_33_1.exe(create C++ source files in \boost_1_33_1)
copy bjam.exe to \boost_1_33_1 and run it

>bjam "-sTOOLS=vc-8_0" install

(3) 執行完後編譯的lib檔和include檔會被安裝到C:\Boost\目錄下

********* boost 1.33.1 for Dev-C++4.9.9.2 *********
(假設dev-cpp的安裝路徑為c:\Dev-Cpp\,由於Dev-cpp使用的其實
是mingw的編譯器,因此編譯boost時選擇的toolset也就是mingw)

(1)下載boost_1_33_1.exe,將其解壓到D:\CppLib\boost_1_33_1\目錄下,
這裏面都是源碼,需要編譯成庫。下載boost-build-2.0-m11.zip, 將其解壓到D:\CppLib\boost-build\目錄下。

(2)編譯Boost.Jam,這是Boost的編譯工具,也需要從源碼編譯。
進入dos環境:
D:\CppLib\boost-build\jam_src\
設置環境變數和路徑:
>set BOOST_JAM_TOOLSET_ROOT=c:\dev-cpp\
>set path=%BOOST_JAM_TOOLSET_ROOT%bin;%path%
執行:***
>build.bat mingw
成功執行後生成執行檔:
D:\CppLib\boost-build\jam_src\bin.ntx86\bjam.exe
新生成的bjam.exe就在這個目錄下,將其拷貝到D:\CppLib\boost_1_33_1\目錄下。

(3)編譯boost源碼
進入D:\CppLib\boost_1_33_1\目錄,
執行編譯:
>bjam "-sTOOLS=mingw" "-sMINGW_ROOT_DIRECTORY=C:\Dev-Cpp" install

(4) 執行完後編譯的lib檔和include檔會被安裝到C:\Boost\目錄下

(5) Dev-C++4.9.9.2 的設定中, 要直接加上 link *.lib, 用到的每個都要加!!!

2006/11/16 下午 02:14:54
********* boost 1.33.1 for BCB2006 *********
(0) 解壓 bcbboost-1_33_1-5_8_2-0.5.zip(比0.4新), 蓋過原來 boost_1_33_1 檔案, 專為BCB2006的更新!

* 先將VC7, VC8的路徑改名稱, 如此才不會直接抓到VC++版本, 切記, 切記:
Microsoft Visual Studio 8 => Microsoft Visual Studio 8_pause
Microsoft Visual Studio .NET 2003 => Microsoft Visual Studio .NET 2003_pause
編譯OK再改回來! Ken Hsu , 20061115

測試用的是Turbo C++ 2006免費版!請先去borland註冊,他會傳一個檔給你, 放在正確的位置就可以
正常install!

(1) Borland 李維 7月6日
整合BDS 2006/C++Builder 2006 和Boost 1.33.x
最近我在準備一些有關C++Builder的東西,需要使用到Boost,剛好也有一些朋友詢問我如何在
BDS 2006/C++Builder 2006中使用Boost架框。於是我花了一些時間整合BDS 2006/C++Builder 2006
和最新的Boost 1.33.x版,以便讓我能夠在BDS 2006/C++Builder 2006中使用Boost。在這裡我整理
出來讓需要使用的朋友參考一下。

要整合BDS 2006/C++Builder 2006和最新的Boost 1.33.x版,您需要進行下面的步驟:
�� 取得Boost 1.33.x並且解開到一個目錄,在本篇文章中假設您是解開在D:\Boost133的目錄中 :
這兒我假設您已經知道怎麼做了,取得BCB 2006 for Boost的Patch,您可以在SourceForge上找到
或是在這下載 http://liwei.csdn.net/down/bcbboost-1_33_1-5_8_2-0.4.zip
解開這檔案並且取代Boost 1.33.x版中的內容
�� 取得或是自己Build bjam.exe。您也可以在這裡下載它 :
http://liwei.csdn.net/down/boost-jam-3.1.13-1-ntx86.zip
把Bjam.exe解開到一個目錄並且把這個目錄加入到您的Path之中
�� 到 CD到D:\Boost133,並且執行下面的命令
set BCCROOT=您的BDS 2006/C++Builder 2006的安裝目錄,例如

>set BCCROOT=D:\Program Files\Borland\BDS\4.0
>bjam "-sTOOLS=borland-5_8_2" install

接著耐心的等待C++Builder 2006的編譯器Build Boost的函式庫,結束之後會在D:\Boost133\bin\boost目錄之中產生靜態和動態連結函式庫。
現在就可以使用Boost函式庫,例如我先把所有Build出來的靜態函式庫拷貝到e:\seminars\bcb2006ex\boost_1_33_1\allbins目錄下(不用,會在c:\boost\lib下面),接著建立一個Console Application專案,撰寫一個Boost範例如下:
啟動Console Application專案的Options對話盒,在Include search path中加入您的boost目錄,例如D:\Boost133:
再把Boost函式庫的目錄加入到Library search path中:
最後編譯此專案,然後就可以在DOS命令列中執行了,例如下面就是我執行Boost函式庫中範例的結果:
很簡單吧,Have fun,have a good BDS 2006/Boost day!

(3) 執行完後編譯的lib檔和include檔會被安裝到C:\Boost\目錄下(有許多模組編譯不出來,可能要等到boost1.34.0才會解決)

(4)由於其中檔名中皆有 "bcb58", BCB2006認不出來, 請下載改名軟體將"bcb58"=>改為"bcb"就可以正常使用.

(5)有些模組仍有問題, 如serialization, 可能要等到boost1.34.0才會解決.

http://www.programmer-club.com.tw/showSameTitleN/c/33560.html

Boost_1_33_1沒有想像中的恐怖 (李维)的更多相关文章

  1. C++重写new和delete,比想像中困难

    关于C++内存管理这话题,永远都不过时.在我刚出道的时候,就已经在考虑怎么检测内存泄漏(https://www.cnblogs.com/coding-my-life/p/3985164.html).想 ...

  2. 李维作答 《insideVCL》——李维实在很勤奋,而且勇于突破,从不以旧的内容充数

    (编者按)<Inside VCL(VCL核心架构剖析)>一书出版以来,众多热心读者给李维先生.博文视点公司.CSDN写来信件,有更多朋友在各个论坛上发表关于该书的言论.读者们不但盛赞该书, ...

  3. 李维对VCL理解的几个错误

    研读深入浅出VCL一书的时候,有不少地方被网友提出疑问,而且似乎是网友们正确.但这丝毫不动摇李维在大中华Delphi界的江湖地位,因为高手应该是对整个系统理解的高手,而不是对某一个疑问的高手.能花巨量 ...

  4. 地图四叉树一般用在GIS中,在游戏寻路中2D游戏中一般用2维数组就够了

    地图四叉树一般用在GIS中,在游戏寻路中2D游戏中一般用2维数组就够了 四叉树对于区域查询,效率比较高. 原理图

  5. C语言中如何将二维数组作为函数的参数传递

    今天写程序的时候要用到二维数组作参数传给一个函数,我发现将二维数组作参数进行传递还不是想象得那么简单里,但是最后我也解决了遇到的问题,所以这篇文章主要介绍如何处理二维数组当作参数传递的情况,希望大家不 ...

  6. IT公司100题-35- 求一个矩阵中最大的二维矩阵(元素和最大)

    问题描述: 求一个矩阵中最大的二维矩阵(元素和最大).如: 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 中最大的是: 4 5 9 10   分析: 2*2子数组的最大和.遍历求和,时 ...

  7. php中count获取多维数组长度的方法

    转自:http://www.jb51.net/article/57021.htm 本文实例讲述了php中count获取多维数组长度的实现方法.分享给大家供大家参考.具体分析如下: 先来看看下面程序运行 ...

  8. php中向前台js中传送一个二维数组

    在php中向前台js中传送一个二维数组,并在前台js接收获取其中值的全过程方法: (1),方法说明:现在后台将数组发送到前台 echo json_encode($result); 然后再在js页面中的 ...

  9. 以杨辉三角为例,从内存角度简单分析C语言中的动态二维数组

    学C语言,一定绕不过指针这一大难关,而指针最让人头疼的就是各种指向关系,一阶的指针还比较容易掌握,但一旦阶数一高,就很容易理不清楚其中的指向关系,现在我将通过杨辉三角为例,我会用四种方法从内存的角度简 ...

随机推荐

  1. 40.【IntelliJ IDEA】使用idea解决新建jsp文件而找不到jsp文件模版的新建选项

    转自:https://www.cnblogs.com/sxdcgaq8080/p/7676294.html 使用idea解决新建jsp文件而找不到jsp文件模版的新建选项,这样每次创建一个新的jsp文 ...

  2. Solr 核心组成

     Solr 核心组成就是:SolrHome 和 SolrCore. SolrHome:SolrHome是Solr运行的主目录,该目录可以包含多个solrcore目录. SolrCore:每个solrc ...

  3. js面向对象2--原型

    一.原型和原型对象 函数的原型prototype:函数才有prototype,prototype是一个对象,指向了当前构造函数的引用地址. 所有对象都有__proto__属性, 所有的__proto ...

  4. django 简单会议室预约(2)

    --我们先打开settings.py 配置文件: import os #指明django APP目录路径 BASE_DIR = os.path.dirname(os.path.dirname(os.p ...

  5. vc 常用语句

    1) CMainFrame* pmainframe=(CMainFrame*)AfxGetMainWnd();CChildFrame *m_finderframe=(CChildFrame*)pmai ...

  6. java与javax的区别分析

    Java是一种受C语言影响的编程语言.Java和Javax本质上是与Java编程语言的上下文一起使用的包.实际上Java和Javax没有区别.这只是不同的名字. Java是一种编程语言,受到C语言的影 ...

  7. 洛谷 P1157 组合的输出

    P1157 组合的输出 题目描述 排列与组合是常用的数学方法,其中组合就是从n个元素中抽出r个元素(不分顺序且r<=n),我们可以简单地将n个元素理解为自然数1,2,…,n,从中任取r个数. 现 ...

  8. 多线程在python中的使用 thread

    近期想学习研究一下python中使用多线程,来提高python在爬虫项目中的效率. 如今我们在网页上查询到在python中使用的多线程的使用大多数都是使用的threading模块,可是python中另 ...

  9. Android Material风格的应用(五)--CollapsingToolbar

    Collapsing Toolbar Android Material风格的应用(一)--AppBar TabLayoutAndroid Material风格的应用(二)--RecyclerViewA ...

  10. 页面事件(Init,Load,PreRender)执行顺序

    简介 对由 Microsoft® Internet 信息服务 (IIS) 处理的 Microsoft® ASP.NET 页面的每个请求都会被移交到 ASP.NET HTTP 管道.HTTP 管道由一系 ...