设为首页 收藏本站
查看: 673|回复: 0

[经验分享] Windows下 VS2015编译boost1.62

[复制链接]

尚未签到

发表于 2017-6-27 15:27:54 | 显示全部楼层 |阅读模式
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 命令行提示符来执行即可。
  
DSC0000.png

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:\Boost
  Unix/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头直接安装到

--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位库)  注意:表格中的/原本是|。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-388767-1-1.html 上篇帖子: windows下配置apache+php环境 下篇帖子: Python实现Windows定时关机
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表