准备几样东西
编译器 mingw 5.0.0 (windows下的配置为例)
       选装Gcc,Make(和c/c++相关的都装上)
       GDB 调试器
http://www.mingw.org/download.shtml

ide  eclipse 3.1.2   +  cdt 3.0.1  (eclipse是基于java的,需要配置java环境)
http://www.eclipse.org/downloads/
http://java.sun.com


formatter AStyle  c/c++ java c# 代码格式化工具
http://sourceforge.net/projects/astyle/


一.安装mingw
 1. 到指定目录,我的安装路径为 D:\Develop\MinGW
 2. 配置系统环境变量
     MINGW_HOME = D:\Develop\MinGW
     class_path = .;%MINGW_HOME%\lib
     path = .;%MINGW_HOME%\bin
    当系统中有多个c++开发包的时候,写在前面的路径优先
    mingw中的make程序名为 mingw32-make.exe ,推荐将其改名为make

二.安装 eclipse 3.12
 1.安装jdk+jre (我机器上是j2sdk 1.5  路径为 D:\Develop\J2SDK )
 2.配置java系统环境变量
     JAVA_HOME = D:\Develop\J2SDK
     class_path = .;%JAVA_HOME%\lib
     path = .;%JAVA_HOME%\bin
 3.下载Eclipse 解压到指定目录,直接就可以执行,如果java环境配置没有问题的话
 4.安装cdt (c/c++ develop kit)
   我按照网上的方法安装数次都不行 (将org.eclipse.cdt-3.x.x-win32.x86.zip 和 org.eclipse.cdt.sdk-3.0.1-win32.x86.zip 中的文件copy到eclipse安装目录的对应目录中)
   最后用eclipse自动升级的办法 打开eclipse help-->software updates-->find an install
   选中search for new features to install , 点next, new remote site ,
    name = cdt 3.01
    url = http://download.eclipse.org/tools/cdt/releases/eclipse3.1 
然后选择 finish ,选中所有文件,开始下载,下载完成后会自动提示安装, 安装完成后 apply change ,然后重启eclipse
就可以在eclipse下进行c/c++ 开发了

   还有一个问题需要注意,cdt的一个问题,在对c++文件建立indexer时会在75%的时候卡住,而且cpu占用率通常都是100% ,我知道的唯一的解决办法是将indexer功能关闭 windows-->perferences--> c/c++-->indexer 选择No Indexer

三.安装astyle
   由于eclipse本身没有针对c/c++的代码格式化工具,所以我们需要借助第三方的工具,我选用astyle一个小巧的,opensource的代码格式化工具,安装非常简单,解压到指定目录下,只有一个可执行文件,astyle.exe ,其他的都是source doc, 可以直接在命令行下使用,语法参阅相关文档
   我将其整合到了gvim , editplus ,eclipse中 . eclipse-->external tools-->program  选择new 新建
    name = Formatter C++
    localtion = D:\Develop\AStyle1.15\astyle.exe
    working directory = ${workspace_loc:/${project_name}}
    arguments = --style=kr --mode=c++ --indent=spaces=2 ${resource_name}
   确定就ok了.
   使用的时候 直接选择 Formatter C++ 就ok了 这里的设置表示,代码风格为k&r, 语法c++ ,代码缩进2空格

四,测试代码
  新建一个managed c++ project
  新建一个c++ 文件 helloWorld.cpp

/*helloWorld.cpp*/
#include <iostream>

using namespace std;

int main() {
  char str[100] = "hello world!!";
  cout << str << endl;
}


  新建makefile
# Project: helloWorld


CPP  = g++
CC   = gcc
LIBS =
INCS =
CXXINCS =
CXXFLAGS = -o -Wall -g $(CXXINCS) $(LIBS)
CFLAGS = -o -Wall -g


.c.o: $(CC) $(CFLAGS)  $<

.cpp.o: $(CPP) $(CXXFLAGS) $<

all: helloWorld

helloWorld: helloWorld.o
    $(CPP) -o helloWorld helloWorld.o $(CXXINCS) $(LIBS)

helloWorld.o: helloWorld.cpp


clean:
    del *.exe *.orig *.o