您的位置:首页 > 其它

(CodeBlocks+MingW)安装和使用Boost(转载)

2014-01-11 21:27 330 查看


第一步

是下载codeblocks-12.11mingw-setup.exe,下载地址::

http://www.codeblocks.org/downloads/26.然后安装CodeBlocks.


第二步

下载Boost,然后解压到一个目录.可以到Boost网站(http://www.boost.org/)下载最新的版本.

例如:

我下载的是boost_1_52_0.7z.解压到目录:D:\ProgramFiles\boost_1_52_0:


第三步

1、编译Boost.打开控制台,进入目录D:\ProgramFiles\boost_1_52_0:

[html] view
plaincopy





cd /D D:\ProgramFiles\boost_1_52_0

2、然后生成bjam.exe和b2.exe文件:

[html] view
plaincopy





bootstrap.bat gcc

3、[不使用Python的可忽略这步]下面的方法可以使用python库:

[plain] view
plaincopy





修改D:\ProgramFiles\boost_1_52_0\tools\build\v2\user-config.jam最后一行即可

using python : 2.7 : C:/Python27 : C:/Python27/include : C:/Python27/Libs ;

注意 : 和 ; 都是使用空格分开的,空格不能省略,且路径不能使用\,一定要使用/才行.

4、然后在控制台编译Boost并安装Boost到目录D:\ProgramFiles\boost:

[plain] view
plaincopy





.\b2 --toolset=gcc --prefix=D:\ProgramFiles\boost install

或者使用

[plain] view
plaincopy





.\bjam --prefix=D:\ProgramFiles\boost\ --build-type=complete --toolset=gcc install

漫长等待后就可以了.

如果运行此命令出现错误

Unable to load Boost.Build: could not find "boost-build.jam"
那通常是控制台当前工作目录(D:\ProgramFiles\boost_1_52_0)不对,新手常犯错.

编译完成后下面的目录会被自动创建:

cpp头文件夹:

[html] view
plaincopy





D:\ProgramFiles\boost\include\boost-1_52\boost\.....

库文件夹::

[html] view
plaincopy





D:\ProgramFiles\boost\lib\......


第四步

在Codeblocks中使用Boost.定义全局变量boost,注意base,include和lib的填写,

设置 Code::Blocks中的全局变量boost

Setting->Global Variables

i. 单击New按钮,创建boost全局变量

ii. 设置 base: D:\ProgramFiles\boost\

iii.设置include:D:\ProgramFiles\boost\include\boost-1_52

iv.设置lib: D:\ProgramFiles\boost\lib\

如图所示:




第五步

设置编译器,如图所示:

Search directories tab Compiler sub-tab filed entered$(#boost.include)



设置Linker选项

Search directories tab Linker sub-tab filed entered$(#boost.lib)




第六步 测试boost程序

下面是个测试程序testboost.cpp,文件格式最好保存为UTF8,这样中文识别会好一点:

[cpp] view
plaincopy





#include <boost/lambda/lambda.hpp>

#include <iostream>

#include <iterator>

#include <algorithm>

int main()

{

using namespace boost::lambda;

typedef std::istream_iterator<int> in;

std::cout<<"测试开始,请输入字符:"<<std::endl;

std::for_each(

in(std::cin), in(), std::cout << (_1 * 3) << " " );

std::cout<<"测试完毕!"<<std::endl;

return 0;

}

OK,一切完毕,正常!

关于b2和bjam的用法如下:

[plain] view
plaincopy





Boost.Build 2011.12-svn

Project-specific help:

Project has jamfile at Jamroot

Usage:

bjam [options] [properties] [install|stage]

Builds and installs Boost.

Targets and Related Options:

install Install headers and compiled library files to the

======= configured locations (below).

--prefix=<PREFIX> Install architecture independent files here.

Default; C:\Boost on Win32

Default; /usr/local on Unix. Linux, etc.

--exec-prefix=<EPREFIX> Install architecture dependent files here.

Default; <PREFIX>

--libdir=<DIR> Install library files here.

Default; <EPREFIX>/lib

--includedir=<HDRDIR> Install header files here.

Default; <PREFIX>/include

stage Build and install only compiled library files

===== to the stage directory.

--stagedir=<STAGEDIR> Install library files here

Default; ./stage

Other Options:

--build-type=<type> Build the specified pre-defined set of variations

of the libraries. Note, that which variants get

built depends on what each library supports.

minimal (default) - Builds a minimal set of

variants. On Windows, these are static

multithreaded libraries in debug and release

modes, using shared runtime. On Linux, these

are static and shared multithreaded libraries

in release mode.

complete - Build all possible variations.

--build-dir=DIR Build in this location instead of building

within the distribution tree. Recommended!

--show-libraries Displays the list of Boost libraries that require

build and installation steps, then exit.

--layout=<layout> Determines whether to choose library names

and header locations such that multiple

versions of Boost or multiple compilers can

be used on the same system.

versioned - Names of boost binaries

include the Boost version number, name and

version of the compiler and encoded build

properties. Boost headers are installed in a

subdirectory of <HDRDIR> whose name contains

the Boost version number.

tagged -- Names of boost binaries include the

encoded build properties such as variant and

threading, but do not including compiler name

and version, or Boost version. This option is

useful if you build several variants of Boost,

using the same compiler.

system - Binaries names do not include the

Boost version number or the name and version

number of the compiler. Boost headers are

installed directly into <HDRDIR>. This option

is intended for system integrators who are

building distribution packages.

The default value is 'versioned' on Windows, and

'system' on Unix.

--buildid=ID Adds the specified ID to the name of built

libraries. The default is to not add anything.

--python-buildid=ID Adds the specified ID to the name of built

libraries that depend on Python. The default

is to not add anything. This ID is added in

addition to --buildid.

--help This message.

--with-<library> Build and install the specified <library>

If this option is used, only libraries

specified using this option will be built.

--without-<library> Do not build, stage, or install the specified

<library>. By default, all libraries are built.

Properties:

toolset=toolset Indicates the toolset to build with.

variant=debug|release Select the build variant

link=static|shared Whether to build static or shared libraries

threading=single|multi Whether to build single or multithreaded binaries

runtime-link=static|shared

Whether to link to static or shared C and C++ runtime.

Configuration help:

Configuration file at E:\SoftWare\Boost_MinGW\boost_1_53_0\tools\build\v2

user-config.jam

This file is used to configure your Boost.Build installation. You can modify

this file in place, or you can place it in a permanent location so that it

does not get overwritten should you get a new version of Boost.Build. See:
http://www.boost.org/boost-build2/doc/html/bbv2/overview/configuration.html
for documentation about possible permanent locations.

General command line usage:

bjam [options] [properties] [targets]

Options, properties and targets can be specified in any order.

Important Options:

* --clean Remove targets instead of building

* -a Rebuild everything

* -n Don't execute the commands, only print them

* -d+2 Show commands as they are executed

* -d0 Supress all informational messages

* -q Stop at first error

* --debug-configuration Diagnose configuration

* --debug-building Report which targets are built with what properties

* --debug-generator Diagnose generator search/execution

Further Help:

The following options can be used to obtain additional documentation.

* --help-options Print more obscure command line options.

* --help-internal Boost.Build implementation details.

* --help-doc-options Implementation details doc formatting.

...found 1 target...

这篇博文的方法我试了,很好用,推荐!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: