1、下载Boost(http://www.boost.org) 
我目前用的是1.61.0版本

2、将MinGW下的bin目录完整路径设置到系统环境变量Path中,保证cmd命令行能找到gcc,g++等命令。

3、cmd进入到boost目录下面,执行"bootstrap.bat gcc",目录下会生成一个b2.exe

4、执行b2.exe开始编译。可以根据自身需要执行不同的编译命令,比如: 
bjam.exe stage –toolset=gcc –with-exception –with-locale –with-program_options –stagedir=E:\Boost\1.61\mingw610 link=static runtime-link=static

我编译1.60,用的命令是:bjam "toolset=gcc" install,结果生成c:\boost\include和 c:\boost\lib和C:\boost\bin.v2 三个文件夹

其他更多编译参数自行上网查询。

http://blog.csdn.net/aqtata/article/details/51780432

折腾了好几个小时,终于理清了Boost链接的组合方式,记录一下。

A1、动态链接Boost的动态库
A2、静态链接Boost的动态库

B1、动态链接VC运行库
B2、静态链接VC运行库

那么这样就有2x2=4种方式链接Boost。但是一般使用Boost的码农们都不会用动态链接的方式吧,因为Boost的头文件默认都是静态链接的
而且动态链接还要附带Boost的DLL文件,另一方面,我们可能并不想让别人知道我们用了Boost。基于这些原因,本文只考虑静态链接Boost库的方式

再说说MSVC,一个项目有Debug和Release模式,还可以设置是动态链接VC库还是静态链接VC库

1、动态链接VC的Boostlib + 动态链接VC库(MD) + Debug
2、动态链接VC的Boostlib + 动态链接VC库(MD) + Release
3、动态链接VC的Boostlib + 静态链接VC库(MT) + Debug
4、动态链接VC的Boostlib + 静态链接VC库(MT) + Release
5、静态链接VC的Boostlib + 动态链接VC库(MD) + Debug
6、静态链接VC的Boostlib + 动态链接VC库(MD) + Release
7、静态链接VC的Boostlib + 静态链接VC库(MT) + Debug
8、静态链接VC的Boostlib + 静态链接VC库(MT) + Release

也就是说,为了编译一个比较通用的,能够适应项目的各种设置的Boost库,每个Boost的模块需要编译8个不同的lib文件。
编译参数中不特别指定variant的话,就是把Debug和Release都编译了,所以我们只需要编译2次就可以获得每个lib的8种不同的文件。

bjam.exe --build-dir=E:/Boost/Boost_1.55.0_VC2013_X64/temp --stagedir=E:/Boost/Boost_1.55.0_VC2013_X64 link=static runtime-link=static address-model=64
bjam.exe --build-dir=E:/Boost/Boost_1.55.0_VC2013_X64/temp --stagedir=E:/Boost/Boost_1.55.0_VC2013_X64 link=static runtime-link=shared address-model=64

--build-dir是临时文件路径。--stagedir是动态库输出目录。address-model=64指定使用x64架构。如果要编译x86的话把address-model去掉就行了。

http://blog.csdn.net/aqtata/article/details/29583259

使用MinGW编译Boost,MSVC编译Boost的几种链接方式 good的更多相关文章

  1. MSVC编译Boost的几种链接方式

    折腾了好几个小时,终于理清了Boost链接的组合方式,记录一下. A1.动态链接Boost的动态库A2.静态链接Boost的动态库 B1.动态链接VC运行库B2.静态链接VC运行库 那么这样就有2x2 ...

  2. boost的编译

    第1步: 先从官网(www.boost.org)下载最新版的BOOST源码,如图所示 我这里下的是zip的那个第2步:编译源代码(放心.这里是傻瓜式的操作,很容易操作)(1)先把源代码放在E盘,例如 ...

  3. boost:asio编译

    参考:http://hi.baidu.com/need_for_dream/blog/item/c14a28086a504c33e92488b5.html 环境: VS2010, boost1.38. ...

  4. Linux平台Boost的编译方法

    本博客(http://blog.csdn.net/livelylittlefish)贴出作 者(三二一@小鱼)相关研究.学习内容所做的笔记,欢迎广大朋友指正! Linux平台Boost的编译方法 Bo ...

  5. 最近编译POCO 库和 Boost库的笔记

    最近在编译POCO库和BOOST库 先讲一下编译POCO库,我编译的是1.9.0,过程相当曲折,要OPENSSL修改版本的,个OPENSSL在这里下载,如果你用一般未修改的OPENSSL 是编译不了, ...

  6. 使用VS2015 编译 64位的boost库

    别人写的编译参考: 目标:使用VS2015 编译 64位的boost库. 一直以来都是在Win32环境下Build和使用boost,但现在基本上每天都在64位Win7下工作,所以很有必要把这几天的经验 ...

  7. boost.python编译及演示样例

    欢迎转载,转载请注明原文地址:http://blog.csdn.net/majianfei1023/article/details/46781581 linux编译boost的链接:http://bl ...

  8. Boost库编译安装

    一.Boost库介绍         Boost库是一个经过千锤百炼.可移植.提供源代码的C++库,作为标准库的后备,是C++标准化进程的发动机之一.Boost库由C++标准委员会库工作组成员发起,其 ...

  9. Boost库编译后命名方式

    Boost官网的<Geting Started On Windows>(http://www.boost.org/doc/libs/1_38_0/more/getting_started/ ...

随机推荐

  1. Android 开发者工具

    30多个Android 开发者工具 文中部分工具是收费的,但是绝大多数都是免费的. FlowUp 这是一个帮助你跟踪app整体性能的工具,深入分析关键的性能数据如FPS, 内存, CPU, 磁盘, 等 ...

  2. 学习鸟哥的Linux私房菜笔记(13)——用户管理

    一.检查用户身份 用户可以使用下列指令了解用户身份 who :查询当前在线的用户 groups :查询用户所属组 id :显示当前用户信息 finger :查询用户信息 二.添加用户 用指令添加命令 ...

  3. 【t014】拯数

    [题目链接]:http://noi.qz5z.com/viewtask.asp?id=t014 [题意] [题解] 这个锁的序列,如果把末尾的0去掉; 然后再倒过来; 那么就是这个序列对应的格雷码了; ...

  4. ik_max_word ik_smart

    打开 ~/es_root/config/elasticsearch.yml 文件,加入以下配置: index: analysis: analyzer: ik_syno: type: custom to ...

  5. WPF中动态加载XAML中的控件

    原文:WPF中动态加载XAML中的控件 using System; using System.Collections.Generic; using System.Linq; using System. ...

  6. 阐述php(五岁以下儿童) 注意事项和使用功能

    1.函数声明 <?php /** * function 函数名(參数1, 參数2.... ){ * 函数体; * 返回值; * } */ $sum = sum(3, 4); echo $sum; ...

  7. DDD实战11 在项目中使用JWT的token 进行授权验证

    步骤: 1.首先要在webapi的管道中 使用认证(Authentication) 2.要在webapi的服务中注册验证条件 代码如下: namespace Dealer.WebApi { publi ...

  8. 中英文对照 —— 手机 App/PC 端软件(系统)、互联网

    0. 经典 & 缩略词 SMS:short message service,短信息服务, SMS code,短信验证码: swipe:vt. 猛击:偷窃:刷-卡 Swipe up/down/r ...

  9. AutoEncoder一些实验结果,并考虑

    看之前Autoencoder什么时候,我做了一些练习这里:http://ufldl.stanford.edu/wiki/index.php/Exercise:Sparse_Autoencoder .其 ...

  10. 构建自己的PHP框架(视图装载)

    完整项目地址:https://github.com/Evai/Aier 视图装载类要做的工作其实很简单: 1. 根据视图名称找到视图文件,支持文件夹 2. 更加方便,更加优雅地把变量的值传递进视图 本 ...