第一步
是下载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:
- cd /D D:\ProgramFiles\boost_1_52_0
2、然后生成bjam.exe和b2.exe文件:
- bootstrap.bat gcc
3、[不使用Python的可忽略这步]下面的方法可以使用python库:
- 修改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:
- .\b2 --toolset=gcc --prefix=D:\ProgramFiles\boost install
- .\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头文件夹:
- D:\ProgramFiles\boost\include\boost-1_52\boost\.....
库文件夹::
- 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,这样中文识别会好一点:
- #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的用法如下:
- 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...