Boost编译和安装说明

合集下载

Boost 库的编译

Boost 库的编译

首先下载bjam.exe,复制到 $BOOST$ 目录下。

或者自己生成bjam,打开Visual Studio 2008 命令提示窗口$BOOST$\tools\jam\src,执行 build.bat 会在$BOOST$\tools\jam\src\bin.ntx86 生成 bjam.exe 文件。

复制文件bjam.exe 文件到 $BOOST$\下。

1.完全编译安装:bjam --toolset=msvc install完成后会生成一个bin.v2编译时的临时目录,手动删除。

生成另一个目录C:\boost,里面为所有的头文件和库文件。

头文件目录为boost_1_34_1\boost 目录复制过去的。

2.只编译相应的库文件bjam --toolset=msvc stage完成后同样会生成bin.v2临时目录。

另一个目录为stage文件,里面有对应的库文件。

3.查看需要编译才能使用的库列表bjam --show-libraries4.编译特定的库,如只编译regexbjam --toolset=msvc --with-regex stage生成的库文件在stage目录中。

5.不编译某个库,如不编译regexbjam --toolset=msvc --without-regex stage生成的库文件在stage目录中。

6.编译特定的库,如只编译regex,生成debug,多线程,共享连接版本,并保存在stage。

bjam --toolset=msvc --with-regex stage debug threading=multi link=shared7.生成 mt-sgd 的静态库(runtime-link-static)bjam "-sTOOLS=vc-8_0" --with-thread install debug releaseruntime-link=static8.编译regex库。

boost库安装教程

boost库安装教程

boost库安装教程Win将 D:\boost 引⼊⼯程即可。

Linux下载解压后编译:./bootstrap.shsudo ./b2 --buildtype=complete install# sudo ./b2 --buildtype=complete stagestage选项指定Boost使⽤本地构建。

如果使⽤install选项则编译后会把Boost安装到默认路径下(/usr/local)。

MAC下载boost库解压编译在解压后的⽂件夹内打开终端,执⾏:./bootstrap.shsudo ./b2 --buildtype=complete install# sudo ./b2 --buildtype=complete stagestage选项指定Boost使⽤本地构建。

如果使⽤install选项则编译后会把Boost安装到默认路径下(/usr/local)。

添加库⽂件位置安装好后,Xcode的项⽬中还是找不到Boost,需要⼿动将Boost的路径导⼊进去。

点击左侧⼯程名称,在右侧的Build Settings标签⾥点击ALL找到其中的Search Paths下的Header Search Paths⼀栏,双击增加⼀个⽬录,填⼊⽬录位置,/usr/local/include/,然后找到Library Search Paths⼀栏,填⼊/usr/local/lib,这样就能正常调⽤Boost库了。

测试#include <iostream>#include <boost/version.hpp>int main(int argc, const char * argv[]) {std::cout<<"Boost版本:"<<BOOST_VERSION<<std::endl;return 0;}Boost版本:107100Program ended with exit code: 0。

Vc6.0 Boost

Vc6.0 Boost

vc6.0环境下编译Boost 1.34.1(2009-07-27 17:09:46)转载▼分类:电脑标签:杂谈今天在同学的帮助下,成功的在vc6.0中安装和编译boost库,遇到不少问题,并解决之,把过程大概写一下,以便以后参阅:(主要参考文章:/blog/cns!C523F565A10E3B66!749.entry/liroket/archive/2009/06/10/4257308.aspx)据说c6.0不支持目前比较新版本,如:boost1.36。

这里给出VC6.0编译boost1.34.1的流程。

1.从下载相对应版本的压缩文件,我下载的是boost_1_34_1.zip。

2.解压缩到本地磁盘(这里为d盘),进入F:\boost_1_34_1\tools\jam\src,鼠标右键-》编辑“build.bat”文件。

把if "_%ProgramFiles%_" == "__" set ProgramFiles=c:\Program Files改成自己vc6.0的安装路径,我的是d盘program files,因此我改成了if"_%ProgramFiles%_" == "__" set ProgramFiles=d:\Program Files然后,顺便检查一下该文件中if EXIST "%ProgramFiles%\Microsoft Visual Studio\VC98\bin\VCVARS32.BAT" (set "BOOST_JAM_TOOLSET=msvc"set "BOOST_JAM_TOOLSET_ROOT=%ProgramFiles%\Microsoft Visual Studio\VC98\"goto :eof)是否和你的vc6.0路径相同。

boost的编译使用

boost的编译使用

boost的编译使用Boost是一个流行的C++库,它提供了许多功能强大的工具和组件,包括容器、算法、并发编程、图形学、网络编程等。

要使用Boost库,首先需要下载并安装Boost库,然后在编译和链接你的C++程序时包含相应的Boost头文件和链接Boost库文件。

下面我将从编译和使用Boost库的角度来详细介绍。

1. 下载和安装Boost库。

首先,你需要从Boost官方网站下载最新的Boost库源代码。

然后,解压缩文件并按照官方文档中的指导进行安装。

通常情况下,Boost提供了一个名为bootstrap.bat(Windows)或者bootstrap.sh(Linux)的脚本,你可以运行这个脚本来配置Boost 库。

接着,运行b2命令来编译Boost库。

2. 编译和链接Boost库。

一旦Boost库安装完成,你就可以在你的C++程序中使用它了。

在编译你的程序时,确保你的编译器能够找到Boost库的头文件。

你可以使用编译器的命令行选项或者在你的IDE中配置头文件搜索路径。

在链接你的程序时,确保你的编译器能够找到Boost库文件。

你需要指定Boost库文件的路径和库名字,具体的方法取决于你使用的编译器和操作系统。

3. 使用Boost库。

一旦你的程序成功编译和链接了Boost库,你就可以在你的代码中包含相应的Boost头文件,并使用Boost提供的功能和组件了。

比如,如果你想使用Boost的智能指针,你可以包含<boost/shared_ptr.hpp>头文件,并使用boost::shared_ptr类来管理动态分配的对象。

总之,要使用Boost库,你需要下载、安装Boost库,配置你的编译器,包含Boost头文件,链接Boost库文件,并在你的代码中使用Boost提供的功能和组件。

希望这些信息能够帮助你成功地编译和使用Boost库。

boost库的编译以及在CodeBlocks中的配置

boost库的编译以及在CodeBlocks中的配置

Boost库的编译和在CodeBlocks的配置基本信息:时间:2012/11/2Boost库的版本:boost.1.51.0 release版CodeBlocks版本:编译前准备:如果是用gcc编译boost,首先一定要先安装MinGW或者安装带MinGW的CodeBlocks,并给gcc编译器置环境变量。

当然是可以使用VS编译boost库,使用vs新建一个工程编译boost库,可以参考:/boost.html本机使用的gcc的版本:步骤一,从boost的官方网站上下载最新的boost版本库,输入网址:如图所示,一般是官网上是都是最新的Release版和最新的Bata版,这里为了稳等的需求,一般是选择Release版的。

点击download进入下载的页面:这里可以根据网速的需求,下载不同的压缩格式,一般而言,不同的格式,因为压缩率的不同,解压缩的时间也不同。

步骤二.下载完成后,解压缩,解压的后的文件大概是400多MB。

解压后的文件的组织形式如下。

这里,新版的文件组织好像和以前的不同,双击图中的booststrap.bat 文件,此时会出现如下的窗口:这个窗口会出现几分钟,当它消失的会产生两个exe文件:单击并运行这两个文件中一个,一开始的时候,也不是很清楚两者有什么区别,但是后来发现,这俩个程序至少完成的功能是一样的。

运行bjam.exe时,此时,boost开始编译,大概是30-40分钟的样子(注意:不同电脑的时间是不同的,这是一因为编译的时候需要耗费大量的CPU资源和内存资源。

我的笔记本是i3 的处理器,2g 的内存),步骤三.由于是直接运行exe文件的,没看到最后的结果,可以自cmd命令行中,先进入当前的目录,输入cd D:\Users\xj\Downloads\boost_1_51_0\boost_1_51_0 再一次运行bjam.exe,可看到,如下的截图,说明编译成功。

注意,在编译中能会出现一些警告入文件找不到之类的,请忽略它。

Linux上安装使用boost入门指导

Linux上安装使用boost入门指导

1.获得boost2.boost分布3.只需要头文件的库4.使用boost建立一个简单的程序5.准备使用boost二进制文件库6.把你的程序链接到boost库1.获得boost:下载boost_1_46_1.tar.bz2解压2.boost分布boost_1_46_1.........................boost根目录boost/.....................................所有boost头文件libs/........................................Tests,.cpps,docs等的库文件注意:(1)boost根目录(通常是/usr/local/boost_1_46_1)想到$BOOST_ROOT变量中(2)编译程序时如果用到boost库,需要指定头文件路径-I$BOOST_ROOT(3)因为所有头文件都在boost文件夹下,并且头文件都是hpp后缀,所#include形如:#include <boost/whaever.hpp>3.只需要头文件的库绝大多数的boost库都是header-noly的:它们完全由包含模板和inline函数的头文件组成,不需要单独编译和二进制库文件,也不需要链接时特别对待。

只有下面的boost库必需单独built:∙Boost.Filesystem∙Boost.GraphParallel∙Boost.IOStreams∙Boost.MPI∙Boost.ProgramOptions∙Boost.Python (see the Boost.Python build documentation before building and installing it)∙Boost.Regex∙Boost.Serialization∙Boost.Signals∙Boost.System∙Boost.Thread∙Boost.Wave下面这些单独built是可选(optional)的:Boost.DateTime Boost.Graph Boost.Math Boost.Random Boost.Test4.使用boost建立简单的程序下面的程序()只用到header-only库。

boost安装

boost安装


# ./bjam --build-type=complete --layout=tagged stage

# ./bjam
方法2:
# cd /usr/src/boost_1_40_0/tools/jam
# ./build_dist.sh
也会完成Linux平台bjam和Boost的所有编译工作,并生成所有调试版、发行版的静态库和动态库。但不推荐该方式。
方法2:
(1) # cd /usr/src/boost_1_40_0/tools/jam/src
(2) # ./build.sh
编译完成后:
生成的可执行文件为
# /usr/src/boost_1_40_0/tools/jam/src/bin.linuxx86/bjam
需要将bjam.exe拷贝到源代码所在的目录
3. 完整编译Boost
对Boost进行完整编译,生成所有调试版、发行版的静态库和动态库。
方法1:
# cd /usr/src
# wget /projects/boost/files/boost/1.40.0/boost_1_40_0.tar.bz2
# tar --bzip2 -xvf boost_1_40_0.tar.bz2
# cd boost_1_40_0
# bjam --toolset=gcc --build-type=complete stage

# ./bjam --build-type=complete --layout=versioned //库名带gcc版本
# cp bin.linuxx86/bjam /usr/src/boost_1_40_0

Boost库的安装与使用

Boost库的安装与使用

Boost库在Windows及Linux上的安装及使用Windows with VS20101.安装VS20102.下载安装Python (编译Boost库时需要)https:///3.下载 最新boost库/projects/boost/files/latest/download4.解压到指定目录。

例如:D:\boost_1_57_0这时,大部分库可以用了,但是与操作系统相关的部分还需要Build.比如thread库。

5.编译boost库运行command window. 开始菜单/运行/cmd输入Dos命令:d:输入Dos命令:cd d:\boost_1_57_0运行批处理:bootstrap.bat运行完后输入命令:./b2编译结束后就可以使用了6. 设置VS2010添加include 路径:d:\boost_1_57_0添加library路径: d:\stage\lib (编译好后产生的)Linux with GCC1.下载安装Python (编译Boost库时需要)https:///2.下载 最新boost库/projects/boost/files/latest/download3.解压到指定目录例如:/usr/boost_1_57_0这时,大部分库可以用了,但是与操作系统相关的部分还需要Build.比如thread库。

4.Build boost库运行命令窗口,将当前路径切到/usr/boost_1_57_0输入命令:./bootstrap.sh运行完后输入命令:./b2编译结束后就可以使用了5.编译使用boost库的项目例如程序文件为test.cppg++ -c test.cpp -o test.o –I/usr/boost_1_57_0g++ -o test test.o boost_thread.a–lstc++ -pthread –lrt-L/usr/boost_1_57_0/stage/lib注意:如果在使用STL库时报很多undefine的错误,多半是没有link STL 库的原因。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Boost编译和安装说明
一、下载和安装
从官方主页下载最新版,因为boost一部分类是需要编译成库才能使用的,所以需要准备好boost专用的编译辅助工具bjam。

可直接使用boost安装包中附带的bjam源码来编译出bjam。

将boost安装包解压到E:\boost_1_53_0,运行E:\boost_1_53_0\bootstrap.bat批处理,会复制E:\boost_1_53_0\tools\build\v2\engine\
bin.ntx86\bjam.exe到目录E:\boost_1_53_0\下,注意最后bjam.exe必须与boost-build.jam在同级目录。

二、编译
打开命令提示符(cmd.exe)窗口并执行bjam,使用--help查看命令帮助。

bjam的命令行参数涉及具体库的选择,会影响编译后的硬盘空间。

使用bjam命令如:bjam stage --toolset=msvc-10.0 --without-python
--without-wave --without-test --stagedir="E:\boost_1_53_0_vc10"
link=shared runtime-link=shared threading=multi debug release
下面详细解释一下每个参数的含义:
1)stage/install:stage表示只生成库(dll和lib),install还会生成包含头文件的
include目录。

推荐使用stage,因为install生成的这个include目录实际就是boost 安装包解压缩后的boost目录(E:\boost_1_53_0\boost,只比include目录多几个非hpp的小文件),可以直接使用,而且不同的IDE都可以使用同一套头文件。

2)toolset:指定编译器,可选的如borland、gcc、msvc(VC6)、msvc-9.0(VS2008)、
msvc-10.0(VS2010)等。

3)without/with:选择不编译/编译哪些库,默认是全部编译。

例如,without-python意
思是不需要编译python库。

如果选择编译python的话,应该到python官方主页
下载安装。

4)stagedir/prefix:stage时使用stagedir,install时使用prefix,表示编译生成文
件的路径。

如果使用了install参数,那么还将生成头文件目录。

推荐给不同的IDE 指定不同目录
5)build-dir:编译生成的中间文件的路径。

默认就在根目录(E:\boost_1_53_0)下,目
录名为bin.v2,等编译完成后可具体查看一下是否生成了lib、dll文件。

如果不需要可直接删除bin.v2目录
6)link:生成动态链接库/静态链接库。

动态链接库使用shared方式,静态链接库使用
static方式。

注意,static方式下生成的很多静态链接库大小都在几兆、几十兆。

不推荐以static方式编译(without掉),巨型库黑名单:wave、graph、math、regex、test、program_options、serialization、signals。

7)runtime-link:动态/静态链接C/C++运行时库,有shared和static两种方式,与link
参数组合有4种方式。

但通常一个工程用动态链接那么所有库都用动态链接,如果用静态链接那么所有库都用静态链接。

所以只需要编译2种组合即可,即link=shared runtime-link=shared和link=static runtime-link=static。

8)threading:单/多线程编译。

一般使用多线程程序,要指定multi方式;如果需要单线
程环境,使用single方式。

9)debug/release:编译debug/release版本,一般两个都编译出来。

编译总共用时20分钟左右。

分别编译静态链接和动态链接版本后,整个E:\boost_1_53_0目录(包括安装包解压缩文件和编译生成的库文件)只有250MB。

一般保留E:\boost_1_53_0\boost 头文件目录、libs目录,它提供了所有Boost类的使用范例参考;doc目录有完整的boost使用帮助。

其他目录和文件可以删除,节约出约150MB空间。

如果图省事,可以使用命令:bjam --toolset=msvc-10.0 --build-type=complete
指定编译器以完全模式编译,编译所有库,带来的后果是:
1)占用3G以上的硬盘空间
2)占用若干小时的编译时间
3)头文件和库文件都存放在C:\Boost目录下,比较混乱
4)生成的很多文件可能永远也用不上
三、配置
include目录:E:\boost_1_53_0\boost,约90MB
library目录:E:\boost_1_53_0vc10,编译后的dll动态库约15MB,加上dll动态库调试符号pdb文件,约95MB
添加到IDE相应的路径下面即可。

四、使用
使用举例:
#include <boostthread.hpp>
此时不用包含库文件,boost的auto-link机制将会自动包含对应的静态lib。

即boost 默认是以静态方式链接的,工程属性最好设为Multi-threaded (Debug)。

如果想使用dll 动态方式链接,需要预先定义宏:
#define BOOST_ALL_DYN_LINK
此时boost会默认包含对应的lib。

如果不想使用boost提供的auto-link机制,可以预先定义宏:
#define BOOST_ALL_NO_LIB
然后使用以下方法链接:
#pragma comment(lib, "boost_thread-vc100-mt-1_53.lib")

#pragma comment(lib, "boost_thread-vc100-mt.lib")
这两个lib其实是一样的,实在不明白boost编译时为什么每个库都要复制一份?另外还有一个比较有用的宏:
#define BOOST_LIB_DIAGNOSTIC
它让VC在编译时的output窗口中输出具体链接了哪些boost库及链接顺序。

关于boost的auto-link机制,详情可查看boostconfigauto_link.hpp里的代码。

相关文档
最新文档