下载
DevC++下载地址:https://sourceforge.net/projects/orwelldevcpp/files/Setup%20Releases/
如果你的系统没有安装Mingw-gcc编译器,那就下载带有TDM-GCC的安装版,自带gcc编译器,No Compiler的版本是不带gcc编译器的版本

gtk+2.0的下载地址
下载地址:http://ftp.acc.umu.se/pub/GNOME/binaries/win32/gtk+/
gtk的配置
将下载后的gtk+-bundle-2.12.11-20080720.zip解压,将其中的bin目录加入windows环境变量path目录中

打开cmd,使用gtk+-bundle-2.12.11-20080720自带的pkg-config工具确定gcc的编译参数
pkg-config --cflags gtk+-2.0
pkg-config --libs gtk+-2.0
得到了以下输出
-mms-bitfields -ID:/libs/gtk+-bundle-2.12.11-20080720/include/gtk-2.0 -ID:/libs/gtk+-bundle-2.12.11-20080720/lib/gtk-2.0/include -ID:/libs/gtk+-bundle-2.12.11-20080720/include/atk-1.0 -ID:/libs/gtk+-bundle-2.12.11-20080720/include/cairo -ID:/libs/gtk+-bundle-2.12.11-20080720/include/pango-1.0 -ID:/libs/gtk+-bundle-2.12.11-20080720/include/glib-2.0 -ID:/libs/gtk+-bundle-2.12.11-20080720/lib/glib-2.0/include -ID:/libs/gtk+-bundle-2.12.11-20080720/include/libpng12
-LD:/libs/gtk+-bundle-2.12.11-20080720/lib -lgtk-win32-2.0 -lgdk-win32-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lpangowin32-1.0 -lgdi32 -lpangocairo-1.0 -lpango-1.0 -lcairo -lgobject-2.0 -lgmodule-2.0 -lglib-2.0 -lintl
说明配置成功
devc++的配置
安装下载完成的Devc++。打开,进行配置
我系统里面有mingw编译器,因此下载的就是不带编译器的版本,需要对编译器进行配置
下载带编译器的版本可以掠过
点击工具,编译选项,点击第绿色加号,输入一个编译器配置名字

之后点击目录,分别对二进制、库、c++包含文件的目录进行配置
mingw的bin目录

lib库目录

c++包含文件目录

最后配置程序名字,一般就对应前面的名字,但是make的名字是mingw32-make

勾选编译时加入以下命令,输入-std=c++11,开启c++11语法支持。
勾选在链接器命令行加入以下命令,输入-static 。作用就是执行静态链接

测试编译器配置,新建一个文件,输入以下代码
点击工具栏编译运行按钮,得到以下输出说明编译器配置正确

devc开发gtk环境的配置
点击工具,编译选项,目录,c++包含文件,将之前配置gtk时pkgconfig输出的头文件目录全部的添加进去(-I开头的编译参数)

点击库,将pkgconfig输出的库目录添加进去(-L开头的编译参数)

点击编译器,将pkgconfig输出的链接的库加入链接器命令行

点击确定
新建一个程序,输入以下代码
#include<gtk/gtk.h>
int main(int argc,char* argv[]){
GtkWidget* window;
GtkWidget* label;
gtk_init(&argc,&argv);
window=gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_window_set_title(GTK_WINDOW(window),"hello world");
gtk_window_set_default_size(GTK_WINDOW(window),300,200);
label=gtk_label_new("hello world!!");
gtk_container_add(GTK_CONTAINER(window),label);
g_signal_connect(G_OBJECT(window),"destroy",G_CALLBACK(gtk_main_quit),NULL);
gtk_widget_show_all(window);
gtk_main();
return 0;
}
点击工具栏的编译运行,程序运行成功。
编译项目变更...
--------
- 项目文件名: C:\Users\jack\Documents\Devc\项目1.dev
- 编译器名: New compiler
生成 makefile...
--------
- 文件名: C:\Users\jack\Documents\Devc\Makefile.win
正在处理makefile...
--------
- makefile处理器: D:\BuildChanTools\i686-5.2.0-release-win32-sjlj-rt_v4-rev1\mingw32\bin\mingw32-make
- 命令: mingw32-make -f "C:\Users\jack\Documents\Devc\Makefile.win" all
g++ -D__DEBUG__ -c main.cpp -o main.o -I"D:/BuildChanTools/i686-5.2.0-release-win32-sjlj-rt_v4-rev1/mingw32/include" -I"D:/BuildChanTools/i686-5.2.0-release-win32-sjlj-rt_v4-rev1/mingw32/i686-w64-mingw32/include" -I"D:/libs/gtk+-bundle-2.12.11-20080720/include/gtk-2.0" -I"D:/libs/gtk+-bundle-2.12.11-20080720/lib/gtk-2.0/include" -I"D:/libs/gtk+-bundle-2.12.11-20080720/include/atk-1.0" -I"D:/libs/gtk+-bundle-2.12.11-20080720/include/cairo" -I"D:/libs/gtk+-bundle-2.12.11-20080720/include/pango-1.0" -I"D:/libs/gtk+-bundle-2.12.11-20080720/include/glib-2.0" -I"D:/libs/gtk+-bundle-2.12.11-20080720/lib/glib-2.0/include" -I"D:/libs/gtk+-bundle-2.12.11-20080720/include/libpng12" -g3 -std=c++11 -Wall -mms-bitfields
g++ -D__DEBUG__ main.o -o 项目1.exe -L"D:/BuildChanTools/i686-5.2.0-release-win32-sjlj-rt_v4-rev1/mingw32/lib" -L"D:/BuildChanTools/i686-5.2.0-release-win32-sjlj-rt_v4-rev1/mingw32/i686-w64-mingw32/lib" -L"D:/libs/gtk+-bundle-2.12.11-20080720/lib" -static -lgtk-win32-2.0 -lgdk-win32-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lpangowin32-1.0 -lgdi32 -lpangocairo-1.0 -lpango-1.0 -lcairo -lgobject-2.0 -lgmodule-2.0 -lglib-2.0 -lintl -g3
编译结果...
--------
- 错误: 0
- 警告: 0
- 输出文件名: C:\Users\jack\Documents\Devc\项目1.exe
- 输出大小: 309.021484375 KiB
- 编译时间: 0.53s

可以看到gtk运行时伴随命令行窗口,通过编译时的-mwindows参数可以取消这个命令窗口。将-mwindows参数追加到编译器选项的,编译时命令中
其它的DevC++配置:
以上只是对于全局的编译器配置,如果你想对项目进行单独的编译器配置,需要点击项目,项目属性,指定新的编译链接参数与附加目录,这些项目配置会作为单独的编译器配置而被使用

点击工具,编辑器属性,基本,可以设置高亮显示当前行的颜色

点击语法,自定义编辑器代码颜色

代码补全
工具,编辑器属性
点击代码补全勾选允许代码补全,勾选代码补全功能实验中,就可以开启代码补全功能

点击工具,快捷键选项,将Show Code Completion的快捷键设置为ctrl+enter,因为原有的ctrl+space与windows的中英文切换相冲突,无法使用代码补全功能

之后在编辑代码时,按ctrl+enter,就可以弹出代码提示

注意事项
确保你的编译器版本位数和gtk库位数一样,推荐都是下载32位的,否则在链接阶段会无法正常链接gtk库
gtk执行的是动态编译,因此运行时需要动态链接库的支持,gtk程序所需的动态链接库文件都在gtk+-bundle文件的bin目录下。因此将其加入环境变量path中就可以确保程序的正常运行,但是在移植到别的电脑上,就需要将依赖的所有动态库一起移植过去,或者,在电脑上安装gtk运行库: