codeblock boost编译与安装

第一步

是下载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在CODE上查看代码片

  1. cd  D:\ProgramFiles\boost_1_52_0  

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

[html] view plaincopy在CODE上查看代码片

  1. bootstrap.bat gcc    

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

[plain] view plaincopy在CODE上查看代码片

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

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

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

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

[plain] view plaincopy在CODE上查看代码片

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

或者使用

[plain] view plaincopy在CODE上查看代码片

  1. .\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)不对,新手常犯错.

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

hpp头文件夹:

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

库文件夹::

  1. 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\

如图所示:

codeblock boost编译与安装_第1张图片

 

第五步

设置编译器,如图所示:

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

codeblock boost编译与安装_第2张图片

 

设置Linker选项

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

codeblock boost编译与安装_第3张图片

第六步 测试boost程序

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

[cpp] view plaincopy在CODE上查看代码片

  1. #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,一切完毕,正常!


你可能感兴趣的:(codeblock boost编译与安装)