BOOST安装或编译
来源:互联网 发布:什么是php 编辑:程序博客网 时间:2024/05/21 10:10
Boost库是为C++语言标准库提供扩展的一些C++程序库的总称。
Boost库由Boost社区组织开发、维护。其目的是为C++程序员提供免费、同行审查的、可移植的程序库。Boost库可以与C++标准库完美共同工作,并且为其提供扩展功能。
Boost库使用Boost License来授权使用。
大部分boost库功能的使用只需包括相应头文件即可,少数(如正则表达式库,文件系统库等)需要链接库。里面有许多具有工业强度的库,如graph库。
- 已编译Boost安装
https://sourceforge.net/projects/boost/files/boost-binaries
根据VS版本和操作系统位数下载合适的版本安装
NameModifiedSizeDownloads / WeekStatusParent folderSHA256SUMS.asc2016-09-272.4 kB3iSHA256SUMS2016-09-271.5 kB4iDEPENDENCY_VERSIONS.txt2016-09-27397 Bytes86iboost_1_62_0-msvc-9.0-64.exe2016-09-27260.5 MB175iboost_1_62_0-msvc-9.0-32.exe2016-09-27233.1 MB106iboost_1_62_0-msvc-8.0-64.exe2016-09-27258.6 MB12iboost_1_62_0-msvc-8.0-32.exe2016-09-27229.5 MB13iboost_1_62_0-msvc-14.0-64.exe2016-09-27277.0 MB1,303iboost_1_62_0-msvc-14.0-32.exe2016-09-27255.4 MB626iboost_1_62_0-msvc-12.0-32.exe2016-09-27244.8 MB301iboost_1_62_0-msvc-12.0-64.exe2016-09-27267.3 MB447iboost_1_62_0-msvc-11.0-64.exe2016-09-27273.0 MB77iboost_1_62_0-msvc-10.0-64.exe2016-09-27257.4 MB117iboost_1_62_0-msvc-11.0-32.exe2016-09-27250.1 MB28iboost_1_62_0-msvc-10.0-32.exe2016-09-27235.1 MB68iboost_1_62_0-bin-msvc-all-32-64.7z2016-09-261.5 GB161iboost_1_62_0-32bitlog.txt2016-09-2630.0 kB22iboost_1_62_0-64bitlog.txt2016-09-2623.6 kB16 Totals: 18 Items 4.6 GB3,565
安装后设置系统变量BoostDir和BoostLibs
在VS工程中创建两个宏 $(BoostDir), $(BoostLibs),就可以不用使用绝对路径了。
- BOOST源码编译
源码https://sourceforge.net/projects/boost/,下载后解压
从开始--Microsoft Visual Studio 2013找到 Visual Studio Tools:
打开文件夹,选择VS2013 x86 Native Tools Command
双击,打开命令窗口
切换到boost_1_62_0目录
首先需要运行bootstrap.bat来生成boost库的编译引擎:b2.exe,bjam.exe(很重要)。
运行C:\boost_1_62_0\bootstrap.bat
编译,可以简单的使用b2 install,也可以指定存放目录。
// 如果要获取动态库
bjam install stage --toolset=msvc-12.0 --stagedir="C:\boost_1_62_0\lib64-msvc-12.0" link=shared runtime-link=shared threading=multi debug release
// 如果是要获取静态库:
bjam install stage --toolset=msvc-12.0 --stagedir="C:\boost_1_62_0\lib64-msvc-12.0" link=static runtime-link=static threading=multi debug release
注意:
- 修改--toolset=msvc-12.0,将12.0修改成对应的vs版本号,12.0是VS2013的版本号。
- 目标地址也要修改成你所需的。
- 不要漏了install,它会帮你把头文件集合到一个文件夹中。 编译过程有一个复制过程,编译需要的时间比较长,本次编译过程中,会在C盘根目录下生成一个boost文件夹,然后包含include和lib文件夹,这就是我们将要使用的头文件和库文件。
- 编译boost.Python库生成动态连接库
bjam stage address-model=64 architecture=x86--toolset=msvc-12.0 --with-python --stagedir="C:\boost_1_62_0\lib64-msvc-12.0" link=shared runtime-link=shared threading=multi debug release
出现:python error LNK2001
解决办法:设置Python路径和版本
set PYTHON_ROOT=c:\Python27set PYTHON_VERSION=2.7
成功
- bjam程序的输入参数
(1)stage/install:
stage表示只生成库(dll和lib),install还会生成包含头文件的include目录。
(2)toolset:
指定编译器,可选的如borland、gcc、msvc(VC6)、msvc-9.0(VS2008)、msvc-12.0(VS2013)等。
(3)without/with:
选择不编译/编译哪些库。根据各人需要进行选择,默认是全部编译。
如果选择编译python的话,是需要python语言支持。
(4)stagedir/prefix:
stage时使用stagedir,install时使用prefix,表示编译生成文件的路径。
(5)build-dir:
编译生成的中间文件的路径。
(6)link:
生成动态链接库/静态链接库。生成动态链接库需使用shared方式,生成静态链接库需使用static方式。一般boost库可能都是以static方式编译,因为最终发布程序带着boost的dll感觉会比较累赘。
(7)runtime-link:
动态/静态链接C/C++运行时库。同样有shared和static两种方式,这样runtime-link和link一共可以产生4种组合方式。
(8)threading:
单/多线程编译。一般都写多线程程序,当然要指定multi方式了;如果需要编写单线程程序,那么还需要编译单线程库,可以使用single方式。
(9)debug/release:
编译debug/release版本。一般都是程序的debug版本对应库的debug版本,所以两个都编译。
0 0
- BOOST安装或编译
- Boost编译和安装
- 安装编译boost库
- 安装、编译boost
- VS2010 Boost编译安装
- 编译安装boost
- VS2010 Boost编译安装
- VS2010 Boost编译安装
- VS2010 Boost编译安装
- VS2010编译安装boost
- boost 1.50 编译安装
- VS2010 Boost编译安装
- Linux 编译安装Boost
- 安装和编译boost
- VS2010 Boost编译安装
- Linux编译安装boost
- boost 1.54 编译安装
- VS2010 Boost编译安装
- 虚拟机类加载机制
- ionic 热更新插件cordova-hot-code-push的实践
- 利用Spring扫包实现发现具体的注解类
- 如何用同一个工程创建两个不同版本的应用
- (POJ3267)The Cow Lexicon <DP>
- BOOST安装或编译
- mapGetters工具函数
- java 中 手机号和身份证号的隐藏替换
- c++中的固定格式用法
- 三分钟HTML5画布(Canvas)动画教程
- oc ARC中NSString* weak与Strong指针问题
- Spring Web mvc Maven实现文件上传
- MySQL临时表
- TensorFlow实现KNN