码迷,mamicode.com
首页 > 其他好文 > 详细

boost编译

时间:2018-03-10 01:26:42      阅读:332      评论:0      收藏:0      [点我收藏+]

标签:单线程   英文名   管理员   www   内容   项目配置   tar   pytho   fun   

第一步:准备工作

1、到官网http://www.boost.org/下载boost库,最好下载1.63最新版

2、安装VS2017 pro(关系目录问题)

3、因为是全编译,所以必须可少要安装Python。安装Python2.7及3.5.3

 

第二步:解压。

本文使用boost_1_66_0 ,解压到任意盘方便以后使用(其他盘也可)。

 

第三步:环境配置

VS2017更加注重跨平台性,安装文件较多,VC有三个版本,分别是arm、Hostx64、Hostx86,本文使用Hostx64。

Note:

默认安装时,编译器cl.exe并不在环境变量中,需要配置。

 

测试环境变量:

Ctrl+r输入cmd,输入cl,若显示:‘cl‘不是内部或外部命令,也不是可运行的程序或批处理文件。说明没有环境变量。

 

技术分享图片

 

配置环境变量:

 

计算机右击-属性-高级系统设置-环境变量-选择Path编辑-添加cl的路径

 

 

 

[cpp] view plain copy
   这个路径只是测试,以您自己的安装vs的目录为主
  1. C:\Program Files(x86)\Microsoft Visual Studio\2017\Professional\VC\Tools\MSVC\14.10.25017\bin\Hostx64\x64  

 

确定。

 

在cmd中使用

 

[html] view plain copy
 
  1.   
[cpp] view plain copy
 
  1. echo %path%  
更新环境变量。

 

 

输入cl

 

技术分享图片

 

 

环境变量已经设置好了。

 

 

第四步:开始编译

 

右击--更多—以管理员身份运行VS2017开发人员命令提示,英文名称x64 Native Tools Command Prompt for VS 2017

 

技术分享图片

 

 

 

输入命令

 

[cpp] view plain copy
 
  1. cd C:\boost\boost_1_63_0  


 

 

 

 

进入之后,输入命令b:  回车

 

 

[cpp] view plain copy
 
  1. bootstrap.bat  
 

 

 


等待1分钟左右会在C:\boost\boost_1_63_0生成几个文件。

 

技术分享图片

 

 

在目录C:\boost\boost_1_63_0下有一个项目配置文件project-config.jam,用记事本或其他文本编辑工具打开,做如下修改:

 

 





[cpp] view plain copy
 
  1. import option ;  
  2. using msvc :14.1 : " C:\Program Files (x86)\Microsoft VisualStudio\2017\Professional\VC\Tools\MSVC\14.10.25017\bin\Hostx64\x64\cl.exe";  
  3. option.set keep-going : false ;  

技术分享图片

 

 

 

 

其中第二行的目录是你VS2017的安装目录中cl.exe的位置。

 

 

 

第五步:安装

 

在boost_1_63_0目录下新建build,用来保存编译时产生的中间文件,编译完可以删除。

 

运行

 

 

[cpp] view plain copy
 1:msvc 是版本型号,可以在vs安装目录下面找到对应的型号,比如我的实:D:\visual studio 2017\visual studio\VC\Tools\MSVC\14.12.25827

2:–-build-dir 是来保存零食文件 可选,编译完可以删除 

3:--stagedir 存放编译后库文件的路径,默认是stage

bjam stage --toolset=msvc-14.12.25827 architecture=x86 address-model=64 --without-graph --without-graph_parallel --stagedir="D:\boost\boost_1_66_0\build" link=static runtime-link=shared runtime-link=static threading=multi debug release   

 
备用
b2.exe stage --toolset=msvc-14.12.25827 address-model=64 --stagedir="C:\boost\bin1.63.0\VC14.0"threading=multi --build-type=complete –-build-dir="C:\boost\boost_1_63_0\build"

 

 

 

具体介绍:

 

--toolset:设置编译器,如果用VC,设msvc, 用MinGW就设gcc。

 

stage:可选install,选stage只生成库(静态库和动态库),install还包含include目录,其实,可以直接用我们下载下来的BOOST包里的boost目录,这个目录和install生成的include目录内容基本一样。所以也就不用了。

 

--build-dir=”[temporary folder name”:编译的临时文件存放位置。

 

--stagedir=” stage folder name]”:存放编译后库文件的路径,默认是stage。

 

--build-type=complete:编译所有版本

 

{

 

  variant=debug|release        决定编译什么版本(Debug or Release?)

 

  link=static|shared           决定使用静态库还是动态库。

 

  threading=single|multi       决定使用单线程还是多线程库。

 

  runtime-link=static|shared   决定是静态还是动态链接C/C++标准库。

 

}

 

link:是动态库还是静态库,static | shared,一般默认静态。

 

address-mode:address-model=64,如果没有这个属性的话,会默认生成32位的平台库,加入这个选项才能生成64位的DLL。如果运行在VS32位的命令行下需要添加” architecture=x86”,笔者使用x64 Native Tools Command Prompt for VS 2017没有x86与x64之间的矛盾,所以未设置。

 

技术分享图片

 

 

 

 

已经安装好了。

 

 

 

技术分享图片

 

 

编译中间产生的垃圾文件,可以直接删除。

 

 

 

技术分享图片

 

 

 

这个文件夹就是需要的lib和动态链接。

 

 

配置在下一篇文章。

 

 

 

参考:

 

 

VS2017编译boost库:http://blog.csdn.net/xyq949587362xyq007/article/details/70183904;

 

 

BOOST库介绍,安装:http://blog.csdn.net/funkri/article/details/9048061;

 

 

Vs2017编译Boost问题How to compile thelastest Boost(Version 1.63.0)?:http://stackoverflow.com/questions/41464356/build-boost-with-msvc-14-1-vs2017-rc;

 

 

Build boost with msvc 14.1 ( VS2017 RC):http://stackoverflow.com/questions/41464356/build-boost-with-msvc-14-1-vs2017-rc;

 

 

boost全平台编译方法:http://blog.csdn.net/hursing/article/details/45439087;

 

 

boost编译库需要区别静态库和动态库:http://blog.csdn.net/seekerm/article/details/41924271;

 

 

Boost1.6x+win7+VC2015编译:http://www.cnblogs.com/yaoyu126/p/5547297.html;

boost编译

标签:单线程   英文名   管理员   www   内容   项目配置   tar   pytho   fun   

原文地址:https://www.cnblogs.com/weekbo/p/8536947.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!