`
aigo
  • 浏览: 2697254 次
  • 性别: Icon_minigender_1
  • 来自: 宜昌
社区版块
存档分类
最新评论

[boost]VS2015编译构建boost 1.60

阅读更多

 

编译脚本

在boost_1_60_0.zip解压后的根目录下,新建一个build_boost_1_60_vs2015.bat文件,打来命令行并定位到当前目录下执行该bat文件(不要双击运行!),等待运行完毕即可。

bat文件内容如下:
参考自:https://studiofreya.com/2015/12/19/how-to-build-boost-1-60-with-visual-studio-2015/

call "%VS140COMNTOOLS%..\..\VC\vcvarsall.bat" x86
 
cd boost_1_60_0
call bootstrap.bat
 
rem Most libraries can be static libs
b2 -j8 toolset=msvc-14.0 address-model=64 architecture=x86 link=static threading=multi runtime-link=shared --build-type=minimal stage --stagedir=stage/x64
b2 -j8 toolset=msvc-14.0 address-model=32 architecture=x86 link=static threading=multi runtime-link=shared --build-type=minimal stage --stagedir=stage/win32
 
pause

 

编译完成后的lib位置

以boost::atomic的release版本为例,其编译生成的目录位置是

x64:boost_1_60_0\bin.v2\libs\atomic\build\msvc-14.0\release\address-model-64\link-static\threading-multi\libboost_atomic-vc140-mt-1_60.lib

win32:boost_1_60_0\bin.v2\libs\atomic\build\msvc-14.0\release\link-static\threading-multi\libboost_atomic-vc140-mt-1_60.lib

 

默认编译引发的错误

如果用到了boost::system,那么在x64模式下会出现lnk2001的错误:

ErrorLNK2001unresolved external symbol "class boost::system::error_category const & __cdecl boost::system::system_category(void)" (?system_category@system@boost@@YAAEBVerror_category@12@XZ)

 

解决办法:按照上面的配置编译生成x64的库。

 

编译参数解释

编译参数到底什么含义,以及可选的其他参数值,见官方文档说明:

http://www.boost.org/doc/libs/1_60_0/doc/html/bbv2/reference.html

 

分享到:
评论

相关推荐

    VS2013编译的boost 1.60库,含32位和64位的动态库和静态库

    在Visual Studio 2013环境下编译Boost 1.60库,用户可以得到针对不同架构(32位和64位)的动态库(.dll)和静态库(.lib),以满足不同项目的需求。动态库在运行时依赖于相应的.dll文件,而静态库则将库功能直接链接...

    vs2013编译的boost库,版本是1.60

    vs2013编译的boost库,版本是1.60。Boost是为C++语言标准库提供扩展的一些C++程序库的总称。Boost库是一个可移植、提供源代码的C++库,作为标准库的后备,是C++标准化进程的开发引擎之一,是为C++语言标准库提供扩展...

    boost_1_60_0.tar.gz

    4. **泛型编程**:Boost.MPL(Metaprogamming Library)和Boost.Fusion提供了一种在编译时进行计算和操作的方法,实现了元编程的强大功能。 5. **日期时间库**:Boost.DateTime提供了一组类和函数,用于处理日期、...

    boost.python 动态编译库

    本资源是boost1.60源码库编译的python模块动态链接库包含x64 release和debug版本,所用的python为64位的python2.7.9 。 boost_python-vc140-mt-1_60.dll boost_python-vc140-mt-1_60.lib boost_python-vc140-mt-gd-...

    boost简易教程.doc

    对于VS2013,推荐下载Boost 1.60或更低版本,因为更高版本可能与VS2013不兼容。 2. 解压下载的文件到您选择的目录,例如`C:\Boost`。 3. 在命令行中导航到Boost的解压目录,执行bootstrap批处理文件(如`bootstrap...

    SimpleRabbitmqClient.rar

    通过对rabbitmq-c的的封装的SimpleRabbitmqClient,使用rabbitmq-c、boost1.60、SimpleRabbitmqClient编译后的dll,.lib,.h都有 可以VS项目中添加直接调用

    iridium-wallet-gui

    IRD) 这是针对MacO,Windows和Linux的iridium GUI钱包源代码和二进制发行版编译提示: 需要的依赖关系:boost> = 1.58,CMake> = 3.1,GCC> = 4.7.3,Qt> = 5.0 当前构建的版本是使用boost 1.60和Qt 5.10编译的开发...

    随笔-MySQL5.7.15源代码方式安装文档

    - Boost 库对于 MySQL 5.7.15 的编译非常重要。 - 可以从官方网站下载 Boost 的源代码,并按照官方文档完成编译和安装。 **6. 解压、配置、编译、安装 MySQL 5.7.15** - 下载 MySQL 5.7.15 的源代码压缩包。 -...

Global site tag (gtag.js) - Google Analytics