Windows下 VS2015编译boost1.62
VS2015编译boost1.62
Boost库是一个可移植、提供源代码的C++库,作为标准库的后备,是C++标准化进程的开发引擎之一。 Boost库由C++标准委员会库工作组成员发起,其中有些内容有望成为下一代C++标准库内容。在C++社区中影响甚大,是不折不扣的“准”标准库。Boost由于其对跨平台的强调,对标准C++的强调,与编写平台无关。大部分boost库功能的使用只需包括相应头文件即可,少数(如正则表达式库,文件系统库等)需要链接库。但Boost中也有很多是实验性质的东西,在实际的开发中实用需要谨慎。
在VS下,boost的头文件中会包含#pragma comment(lib,xxx)的语句,所以可以不用在项目中添加相关的库指定。
boost中大部分库是仅有头文件,不用编译成库的。
编译好的库可以到这里下载
链接:http://share.weiyun.com/712e3d95bb73d7378a8c34d3518d12f3 (密码:2LNF)
1、源码
源码的下载可以直接去http://www.boost.org/网站下载。
我下载的地址是http://jaist.dl.sourceforge.net/project/boost/boost/1.62.0/boost_1_62_0.7z
2、生成编译工具
boost库自带了bootstrap脚本来生成一个构建工具b2。打开命令行直接执行即可。
D:\development_library\boost\boost_1_62_0>bootstrap.bat --help
Building Boost.Build engine
Failed to build Boost.Build engine.
Please consult bootstrap.log for further diagnostics.
You can try to obtain a prebuilt binary from
   http://sf.net/project/showfiles.php?group_id=7586&package_id=72941
Also, you can file an issue at http://svn.boost.org
Please attach bootstrap.log in that case.
这里出现了Failed to build Boost.Build engine.错误,解决办法很简单,使用VS 2015 命令行提示符来执行即可。

3、进行编译
b2工具的使用如下
b2 [options] [properties] [install|stage]
#options		选项
#properties		特性
#install|stage	安装还是编译到指定位置
编译命令如下
#编译
b2.exe --prefix=C:\Boost --build-type=complete --build-dir=build_tmp toolset=msvc-14.0 address-model=64 stage
#安装
b2.exe --prefix=C:\Boost --build-type=complete --build-dir=build_tmp toolset=msvc-14.0 address-model=64 install
目标和相关选项:
| 选项 | 含义 | 
|---|---|
| install | 安装头文件和编译后的库文件到配置的位置(如下)。 | 
--prefix=<PREFIX> | 
平台架构无关的文件(include/doc等)的安装位置 win32默认在 C:\BoostUnix/Linux默认在 /usr/local | 
--exec-prefix=<EPREFIX> | 
安装平台架构相关的文件在这里 默认与 <PREFIX>相同 | 
--libdir=<DIR> | 
库文件安装目录 默认 <EPREFIX>/lib | 
--includedir=<HDRDIR> | 
头文件安装目录 默认 <PREFIX>/include | 
| stage | 仅构建和安装编译的库文件到stage目录 | 
--stagedir=<STAGEDIR> | 
安装编译的库文件目录 默认 ./stage | 
其他选项:
| 选项 | 含义 | 
|---|---|
--build-type=<type> | 
构建预定义的配置。 注意:构建哪些variants取决于各个库的支持。 minimal(默认) 构建一个最小集(即只构建release版本。 在Windows上,构建debug和release模式下使用共享运行时的静态多线程库。 在Linux上,这些是release模式下的静态和共享多线程库)complete构建debug和release版本 | 
| --build-dir=DIR | 构建指定目录(默认中间文件会在源码目录下) 推荐!# | 
| --show-libraries | 显示构建的Boost库列表在安装步骤,然后退出 | 
--layout=<layout> | 
确定是否选择库名和头文件位置,一边可以在同一系统上使用多个版本的Boost库或多个编译器编译的。versioned版本名,会影响库文件名和头文件路径<HDRDIR>taggedboost二进制文件的名称包括编译的构建属性(如variant和threading),但不包括编译器名称和版本或Boost版本。如果使用相同的编译器构建Boost的多个变体,此选项将非常有用。system二进制名称不包括Boost版本号或编译器的名称和版本号。 Boost头直接安装到中。此选项适用于构建分发软件包的系统集成商。默认值在Windows上为“versioned”,在Unix上为“system”。  | 
| --buildid=ID | 将指定的ID添加到构建的库的名称。 默认是不添加任何东西。  | 
| --python-buildid=ID | 将指定的ID添加到依赖于Python的构建库的名称。 默认是不添加任何东西。 但指定了--buildid,还会添加此ID。  | 
| --help | 显示相关选项说明信息 | 
--with-<library> | 
构建并安装指定的。 如果使用此选项,将只构建使用此选项指定的库。  | 
--without-<library> | 
不要构建和安装指定的。 默认是构建所有的。  | 
特性:
| 选项 | 含义 | 
|---|---|
| toolset=toolset | 指示要构建的平台工具集。(VS2015就是msvc-14.0) | 
variant=debug/release | 
选择构建variant | 
link=static/shared | 
构建静态或共享库 | 
threading=single/multi | 
构建单线程或多线程二进制程序库 | 
runtime-link=static/shared | 
静态还是动态链接到C和C ++运行时库 | 
address-model=32/64 | 
寻址模式(生成32位还是64位库) | 
注意:表格中的/原本是|。 | 
Windows下 VS2015编译boost1.62的更多相关文章
- VS2015编译boost1.62
		
VS2015编译boost1.62 Boost库是一个可移植.提供源代码的C++库,作为标准库的后备,是C++标准化进程的开发引擎之一. Boost库由C++标准委员会库工作组成员发起,其中有些内容有 ...
 - Windows下 VS2015编译levelDB(nmake)
		
VS2015编译levelDB Leveldb是一个google实现的非常高效的kv数据库,非常适合嵌入到程序中.如果有简单的key-value数据库需求,而又想使用一个数据库服务的话,levelDB ...
 - Windows下 VS2015编译RocksDB
		
VS2015编译RocksDB RocksDB 是一个来自 facebook 的可嵌入式的支持持久化的 key-value 存储系统,也可作为 C/S 模式下的存储数据库,但主要目的还是嵌入式.Roc ...
 - Windows下 VS2015编译ForestDB
		
VS2015编译ForestDB ForestDB 是一个快速的 Key-Value 存储引擎,基于层次B +树单词查找树.由 Couchbase 缓存和存储团队开发. 1.下载forestdb源码 ...
 - Windows下PythonQt编译(vs2015+Qt5.11.2+PythonQt 3.2)
		
后记: 由于自己low,没有下载罪行的python3.2导致编译上遇到种种问题,后文可以参考,建议看: <Windows7 VS2015 下编译 PythonQt3.2> https:// ...
 - Windows下PythonQt编译(vs2015+Qt5.11.2+PythonQt 3.2)探索
		
时间:2018年10月20日 笔者最近在做Qt方面的开发工作,需用到脚本程序对程序内部进行扩展,就很自然的想到了PythonQt,下面介绍PythonQt在Windows下的的安装编译心得,水平有限, ...
 - 原创 C++应用程序在Windows下的编译、链接:第一部分 概述
		
本文是对C++应用程序在Windows下的编译.链接的深入理解和分析,文章的目录如下: 我们先看第一章概述部分. 1概述 1.1编译工具简介 cl.exe是windows平台下的编译器,link.ex ...
 - 【FFmpeg】Windows下FFmpeg编译
		
由于FFmpeg是基于Linux开发的开源项目,源代码和Windows下最常见的Visual Studio提供的C/C++编译器不兼容,因此它不能使用MSVC++编译,需要在Windows下配置一个类 ...
 - C++应用程序在Windows下的编译、链接(一)概述
		
C++应用程序在Windows下的编译.链接(一)概述 本文是对C++应用程序在Windows下的编译.链接的深入理解和分析,文章的目录如下: 我们先看第一章概述部分. 1概述 1.1编译工具简介 c ...
 
随机推荐
- 支付宝 iphone6 指纹验证失败
			
重启 iphone6 就可以了. 再次打开 支付宝 那个 指纹功能,就有一个弹出框 可以按指纹了.
 - ARM、X86/Atom、MIPS、PowerPC
			
关注Android的时候,有一些CPU架构方面的术语知识,主要有:ARM.X86/Atom.MIPS.PowerPC1)ARM/MIPS/PowerPC均是基于精简指令集(RISC,Reduced I ...
 - 使用C++/libCurl/Jsoncpp读取arcgis wmts 服务(restful模式)
			
前言: 最近工作需要将arcgis的wmts服务接入我们的3DGis系统平台,要求用户只输入一个rest模式的wmts服务地址,系统即可自动获取并解析其元数据信息,生成wmts图层,并渲染显示.经过多 ...
 - MySQL数据库select语句的使用方法
			
select语句可 以用回车分隔 $sql="select * from article where id=1"和 $sql="select * from article ...
 - 2017年11月8日最新仿互站导航t5友价商城-9套模板首页都增加微信登陆
			
今天测试效果如下,直接看图吧,入口在下方,点击图片直达 把9套餐模板都添加了微信首页登陆,仿互站的导航,操作比互站还要方便,官方一直对https 支持不太友好,索性把所有的https bug都修复了, ...
 - UltraISO制作U盘启动盘安装Win7/9/10系统攻略
			
U盘安装好处就是不用使用笨拙的光盘,光盘还容易出现问题,无法读取的问题.U盘体积小,携带方便,随时都可以制作系统启动盘. U盘建议选择8G及以上大小的. 下面一步一步讲解如果制作U盘安装盘: 1.首先 ...
 - artTemplate 简洁语法版
			
引用简洁语法的引擎版本,例如: <script src="dist/template.js"></script> 下载 表达式 {{ 与 }} 符号包裹起来 ...
 - GPUImage简单滤镜使用(二)
			
GPUImage中,提供了许多简单的的常用的滤镜.在上一篇文章讲了如何调节图像的亮度这片文章讲一下如何通过GPUImage调节图像的对比度,饱和度,曝光度,和白平衡(美图秀秀中的色温). 原图像 调整 ...
 - Python编程工具pycharm的使用
			
简介 俗话说工欲善其事必先利其器,所以对于程序员来说,使用python编程必须有一个强大的Python编程工具,这款工具就是pycharm. PyCharm是一种Python IDE,带有一整套可以帮 ...
 - ZH奶酪:AngularJS/JavaScript上传图片【PC端】
			
[功能介绍] 类似与修改个人信息的时候,点击头像,就可以完成选择照片.上传照片等步骤达到替换头像的目的. [运行流程] (1)点击头像 (2)选择头像 (3)点击“完成”,上传头像 1.HTML图片部 ...