一、安装CDT插件

Eclipse是用Java的swt开发的,所以需要java虚拟机才能运行,jdk的配置方法网上一大堆,这里就不细说了。安装CDT的方法简单提一下,到Help->Eclipse MarketPlace下搜索CDT,然后安装即可。

具体过程可以参考百度经验

二、MinGW配置

首先要装一个MinGW,下载下来后解压安装,并将MinGW下的bin目录加入环境变量Path中(最好加在前面,防止和VC/.NET之类的make命令冲突)。

终端中输入gcc -v,如果出现以下内容,则表示配置成功

接下来将bin目录下的mingw32-make.exe改名为make.exe这是因为eclise内部默认使用这个文件名。打开终端输入make,如果提示

make:***No targets specfied and no make file found stop

则表示修改成功

如果不想改名,还有一个办法是 到Window->Preference->New C/C++ Project Wizard->Make Project下把Use default build command的勾去掉,将下面的command改为mingw32-make

要想在Eclipse里写代码,还需要多配置两个环境变量,一个是头文件的路径设置C_INCLUDEDE_PATH=E:\MinGW\include;另一个是MinGW的库文件,设置LIBRARY_PATH=E:\MinGW\lib,这样eclipse新建C++项目时就会自动把MinGW的头文件加载到项目中。

三、用MinGW编译Boost

1.在下载好解压后的boost_1_59_0(1_59_0是版本号)目录下,有一个bootstrap.bat脚本,我们输入bootstrap gcc进行编译

2.编译成功的话会在当前目录下生成一个bjam.exe

3.接着我们要使用bjam.exe编译boost。

bjam install/stage --toolset=gcc --without-python --stagedir="E:\boost"

  • toolset表示所用的编译器,由于我们装的是MinGW,所以是gcc。
  • install/stage的区别是:stage只会生成库文件(.a文件),而instal还会生成include目录,include目录包含的东西实际上就是解压后的boost目录,所以直接用之前解压的boost目录里的东西就行,一来节省编译时间,二来节省磁盘空间。
  • with/without指定编译/不编译哪些库
  • stagedir/prefix:stage时用stagedir,install时用prefix,如果不指定默认装在C盘。

这里我用的还是install命令,安装在D盘,命令为bjam install --toolset=gcc --prefix="D:/boost"

4.等待一段时间后(大概20分钟),会在指定目录下生成一个boost文件夹,里面放着生成的.a文件(这里和参考链接给的教程里说的不一样,因为我用的是gcc所以生成.a文件,如果用msvc编译出来的应该就是.dll文件了)。

可以通过bjam --show-libraries查看安装的库

5.将编译好的boost目录拷贝到E:\MinGW

四、在Eclipse中使用boost

1.新建一个C++项目,然后在项目上右键选择Properties

2.打开"C/C++ General" 标签下的"Paths and Symbols",确保configuration是 "Debug [Active]"

3.在Includes菜单下的language框里选择GNU C++,加入boost的头文件路径

4.在Library Path菜单里添加boost的库文件路径

到此,boost就已经配置好了,我们接下来测试一下其中的正则表达式模块。

#include<iostream>
#include<boost/regex.hpp>
using namespace std;
using namespace boost;
int main(int argc, const char* argv[])
{
string pattern("[^c]ei");
pattern = "[[:alpha:]]*" + pattern + "[[:alpha:]]*";
regex r(pattern);
smatch results;
string test_str = "receipt freind theif receive";
if(regex_search(test_str, results, r))
cout << results.str() << std::endl;
}

这段代码的作用是找到包含ei但不包含cei的单词,正确输出结果是 freind。

运行之前,需要添加regex的库文件libboost_regex-mgw34-mt-d-1_59.a,以免ld链接不成功。

还是右键Properties,找到C/C++ Build->Settings,选择MinGW C++ Linker->Libraries,点击add按钮输入boost_regex-mgw34-mt-d-1_59(注意去掉开头的lib,否则找不到)

然后build,再run,就可以看到结果了:

参考:

Eclipse+CDT+MinGW

boost 1.56.0 编译及使用

测试代码出处

Eclipse+Mingw+Boost 环境搭建的更多相关文章

  1. Eclipse+MinGW+Boost环境搭建

    一.编译 运行 .bat 生成bjam.exe 运行:bjam --build-type=complete toolset=gcc stage 二.配置 配置eclipse -L Path加入链接库位 ...

  2. Eclipse swt开发环境搭建

    原料: eclipse swt.下载链接为: Eclipse 4.6.2 Release Build: 4.6.2 配置说明: Developing SWT applications using Ec ...

  3. Eclipse JSP/Servlet 环境搭建

    Eclipse JSP/Servlet 环境搭建 本文假定你已安装了 JDK 环境,如未安装,可参阅 Java 开发环境配置. 我们可以使用 Eclipse 来搭建 JSP 开发环境,首先我们分别下载 ...

  4. Solr4.8.0源码分析(4)之Eclipse Solr调试环境搭建

    Solr4.8.0源码分析(4)之Eclipse Solr调试环境搭建 由于公司里的Solr调试都是用远程jpda进行的,但是家里只有一台电脑所以不能jpda进行调试,这是因为jpda的端口冲突.所以 ...

  5. eclipse python开发环境搭建

    eclipse python开发环境搭建[非原创] 1.在www.eclipse.org官网下载Eclipse Classic 4.2.2,Win7 64位下载eclipse-SDK-4.2.2-wi ...

  6. ECLIPSE JSP TOMCAT 环境搭建

    ECLIPSE JSP TOMCAT 环境搭建(完整) 要学习一门语言,首先要做的就是搭建环境,然后能写一个小的Demo(类似Helloworld),不仅可以建立信心,而且还可以为之后的学习搭建一个验 ...

  7. JSP-Runood:Eclipse JSP/Servlet 环境搭建

    ylbtech-JSP-Runood:Eclipse JSP/Servlet 环境搭建 1.返回顶部 1. Eclipse JSP/Servlet 环境搭建 本文假定你已安装了 JDK 环境,如未安装 ...

  8. 【ARM-Linux开发】在win下开发的eclipse+yougatoo+jlink环境搭建

    在win下开发的eclipse+yougatoo+jlink环境搭建 一 工具的安装 第一步:安装gcc编译工具 yagarto-bu-2.21_gcc-4.6.2-c-C++_nl-1.19.0_g ...

  9. eclipse+android+opencv环境搭建的步骤

    ---恢复内容开始--- 2016年4月12日编写 一.第一步:搭建eclipse开发环境 1.在eclipse官网中下载eclipse.zip进行解压即可.没有版本要求,但要和电脑的位数相匹配.如: ...

随机推荐

  1. DB设计原则(二)如何拆、分表

    不要盲目为了减少表的数量,而使某一张表的字段过多,而导致表冗余列存在

  2. access remote libvirtd

    访问远程libvirtd服务因为是在一个可信环境中运行,所以可以忽略安全方面的操作,步骤如下:(1)更改libvirtd配置    1.1 更改/ect/sysconfig/libvirtd文件,打开 ...

  3. R中,定义一个长度为0的向量

    定义一个长度为0的向量 > x<-c()> length(x)[1] 0 修改该向量的类型 > class(x)="numeric"> class(x ...

  4. AR

    http://jingyan.baidu.com/article/6766299727dcfc54d41b8455.html 1.注册.然后下载sdk(注册账号主要是为了第3步中制作识别图而用的) 下 ...

  5. 解决:新版火狐浏览器3d打不开

    重启:按 Ctrl + Shift + L 键唤出 3d 视图 参考文档:http://tieba.baidu.com/p/4606488108

  6. Apache性能优化、超时设置,linux 重启apache

    在httpd.conf中去掉Include conf/extra/httpd-default.conf前的#以使httpd-default.php生效.其中调节以下参数Timeout 15 (连接超时 ...

  7. 剑指Offer:面试题19——二叉树的镜像(java实现)

    问题描述: 操作给定的二叉树,将其变换为源二叉树的镜像. 二叉树结点定义为: public class TreeNode { int val = 0; TreeNode left = null; Tr ...

  8. Ping 命令的使用方法总结

    一.Ping 命令 “Ping”命令是我们在判断网络故障常用的命令,但您真正明白这个命令运行后会发生什么,以及出现的各种信息说明了什么吗?其实熟练的掌握 Ping 命令的各种技巧可以帮助你解决很多网络 ...

  9. linux——ssh服务

    SSH服务(TCP端口号22):安全的命令解释器 为客户机提供安全的Shell 环境,用于远程管理 SSH基于公钥加密(非对称加密)技术: 数据加密传输: 客户端和服务器的身份验证: 公钥 和 私钥 ...

  10. JS语法(二)

    JS变量 var 变量名 = 变量值://自己会判断什么类型 一个好的编程习惯是,在代码开始处,统一对需要的变量进行声明. var name = “xiaosan”, age = 22, addres ...