boost vc编译

0.下载:http://www.boost.org/

1.编译b2.exe,bjam.exe.

双击根目录下面的bootstrap.bat文件,生成b2.exe,bjam.exe

如果编译64位需要vs的cmd窗口,如VS2013 x64 Native Tools Command Prompt进入到boost根目录下面运行bootstrap,编译b2.exe,biam.exe.

2.用b2.exe生成64位的lib

b2 stage --toolset=msvc-12.0 architecture=x86 address-model=64 --stagedir=".\lib\vc12_x64" link=static runtime-link=static threading=multi debug release

3.用b2.exe生成32位的lib

b2 stage --toolset=msvc-12.0 architecture=x86 --stagedir=".\lib\vc12_x86" link=static runtime-link=static threading=multi debug release

4.解释编译命令

link=static/shared,静态或者动态编译boost

runtime-link=static/shared,boost是否需要依赖vc运行库,如果你要自带vc运行库可用shared

threading=multi/single,是否支持多线程

红色为默认选项,如果不指定编译命令的情况下

在一个vs版本的的情况下可以直接b2 --toolset=msvc,多个的话需要指定vs版本号b2 --toolset=msvc-12.0

5.生成的文件名

libboost_log-vc120-mt-sgd-1_59.lib,其中mt表示多线程,sgd中的s表示runtime 是static,gd表示debug版本。

6.将生成的lib和头文件加到vc目录下面

D:\boost_1_59_0加入到include下面中

将需要lib,比如boost_1_59_0\lib\vc12_x64\lib加到lib目录下面

7.可删除临时文件目录bin.v2

8.测试下

#include <boost/timer.hpp>
#include <iostream>
using namespace std;
using namespace boost;

int _tmain(int argc, _TCHAR* argv[])
{
         timer t;
         cout<<"max timespan:"<<t.elapsed_max() /3600<<"h"<<endl;
         cout<<"min timespan:"<<t.elapsed_min()<<"s"<<endl;
         return 0;
}

9.参考

http://www.cnblogs.com/zhcncn/p/3950477.html

时间: 2024-10-10 06:45:52

boost vc编译的相关文章

Windows下VC编译OpenDDS

OpenDDS是一个OMG组织DDS标准的C++开源实现,OpenDDS同时也提供Java支持.OpenDDS依赖ACE抽象层来提供不同平台的兼容性,同时也依赖于TAO(例如TAO的IDL编译器).当前OpenDDS有ociweb ObjectComputing维护,官方网站http://www.opendds.org/.目前OpenDDS支持的平台有Windows,Linux family,Android,VxWorks等,可用的编译器包括VC,gcc,QNX gcc等. 1. OpenDDS

vc++ 编译连接错误and解决方法

1. LIBCD.lib(wincrt0.obj) : error LNK2001: unresolved external symbol [email protected] Debug/lizi.exe : [分析]: 项目创建错误,因该选择Win32 Console Project,而不是 Win32 Projectvc++ 编译连接错误and解决方法,布布扣,bubuko.com

Boost库编译安装

一.Boost库介绍         Boost库是一个经过千锤百炼.可移植.提供源代码的C++库,作为标准库的后备,是C++标准化进程的发动机之一.Boost库由C++标准委员会库工作组成员发起,其中有些内容有望成为下一代C++标准库内容.在C++社区中影响甚大,其成员已近2000人. Boost库为我们带来了最新.最酷.最实用的技术,是不折不扣的“准”标准库. Boost库中比较有名的几个库: (1)Regex,正则表达式库: (2)Spirit,LL parser framework,用C

VC编译错误:msvcrtd.lib(ti_inst.obj) : error LNK2005: &quot;private: __thiscall type_info::t.... 已经在 libcmtd.lib(typinfo.obj) 中定义

1>msvcrtd.lib(ti_inst.obj) : error LNK2005: "private: __thiscall type_info::type_info(class type_info const &)" ([email protected]@[email protected]@@Z) 已经在 libcmtd.lib(typinfo.obj) 中定义1>msvcrtd.lib(ti_inst.obj) : error LNK2005: "

VC编译连接选项详解

VC编译连接选项详解 大家可能一直在用VC开发软件,但是对于这个编译器却未必很了解.原因是多方面的.大多数情况下,我们只停留在"使用"它,而不会想去"了解"它.因为它只是一个工具,我们宁可把更多的精力放在C++语言和软件设计上.我们习惯于这样一种"模式":建立一个项目,然后写代码,然后编译,反反复复调试.但是,所谓:"公欲善其事,必先利其器".如果我们精于VC开发环境,我们是不是能够做得更加游刃有余呢? VC的处理流程,大致分

【转载】vc编译exe的体积最小优化

原文地址:http://www.2cto.com/kf/200908/40970.html vc通过设置参数来自定义编译方式.主要用到的技巧有: 一,使用release版而不用debug版编译 使用debug版编译会生成许多垃圾信息.我们先使用默认的设置进行一下编译.可以看到编译后生成的文件有152k之巨.使用release版编译具体方法是:在"build(编译)--->Configuration(配置)"中将"Win32 debug"移去,然后再次编译可以发

用VC编译lua源码,生成lua语言的解释器和编译器

用VC编译lua源码,生成lua语言的解释器和编译器 1.去网址下载源码 http://www.lua.org/download.html 2.装一个VC++,我用的是VC6.0 3.接下来我们开始编译源码,我们需要编译: 一个静态库 一个动态库 一个lua语言解释器 一个lua编译器 建立一个工静态库工程 打开VC-->文件-->(点击)新建--(弹出框中选择)工程-->(win32 static library) 创一个空的工程 工程名为luaLib 把lua中所有的源码添加,去掉其

VC++编译lua库 无法解析lua符号问题

VC编译lua库 出现错误: 错误 36 error LNK1120: 21 个无法解析的外部命令 C:\Users\luozhuang\Desktop\onscripter-20120416VC\Release\onscripter.exe onscripter 错误 19 error LNK2019: 无法解析的外部符号 "char const * __cdecl lua_tolstring(struct lua_State *,int,unsigned int *)" ([ema

用Sublime Text2搭建VC编译环境

用惯了臃肿的VS2013,有时候想写个小项目,小测试程序,编辑浏览代码什么的不想 总打开它,于是我折腾了一下Sublime Text2 这款现代化高大上的强大代码编辑器,它的定位 在于绿色轻巧,速度快,且跨平台支持Win/Mac/Linux,支持32与64位,但它需要配合众多 的插件一起使用,所以比较适合喜欢折腾的人. 另外,Sublime Text2 通常用于前端开发,例如HTML,PHP神马的,亦或者是写些脚本神马的, 像Lua, Js之类的,但估计用它来写VC的还真不多,毕竟有VS这等便利