为了能在VS中使用Gtk+库,今天忙乎了一下午,走了弯路,把Gtk+库加到VS2010我实在是弄不出来。最后还是选择VS2008了,结果成功了。现在分享下我是怎么给VS2008加入Gtk+库的。为什么想在VS中使用Gtk+就不多说了,个人爱好问题。
那为什么选择Gtkmm而不选择Gtk+呢?这个应该都知道,Gtkmm是封装好了类,支持C++,同样也支持C。
步骤:
1.先下载Gtkmm安装包,下载地址。安装好Gtkmm(怎么安装不说了,一键式的安装);
2.打开VS2008,新建一个控制台项目,我建的项目是gtk_test,保存在文件夹:E:\vc++2008\gtk_test
如下图:
3.项目建好后,打开属性管理器,找不到属性管理器在哪?打开路径如下图:
4.下面进入安装Gtkmm的文件夹,我安装在C盘:C:\gtkmm\MSVC ,进入MSVC文件夹,把下面两个文件复制到工程目录下:E:\vc++2008\gtk_test\gtk_test 下。
5.进入属性管理器,右键“Debug|Win32”,选择“添加现有属性表”
再选择刚才赋值的文件“gtkmm-vc90-d-2_4”。再右键“Release|Win32”,同上面一样,但选择文件“gtkmm-vc90-2_4”。
6.好了,基本完成了,现在来修改stdafx.h文件:
如下:
gtk_test.cpp// stdafx.h : 标准系统包含文件的包含文件, // 或是经常使用但不常更改的 // 特定于项目的包含文件 // #pragma once #include "targetver.h" #include <stdio.h> #include <gtkmm.h> // TODO: 在此处引用程序需要的其他头文件
修改gtk_test.cpp文件如下:
// gtk_test.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" int main(int argc, char* argv[]) { Gtk::Main kit(argc, argv); Gtk::Window window; Gtk::Main::run(window); return EXIT_SUCCESS; }
5.现在如果编译已经可以执行了,可能由于VS2008的一个bug,debug版本会跳出
执行编译release版,如下图,但是在Gtk窗口后面有个控制台窗口。
6.如何去掉后面的控制台呢?建议debug版保留这个控制台窗口。去掉控制台方法如下:
右键“gtk_test”,进入属性设置
进入属性设置窗口,修改:链接器->系统->子系统设为Windows(/SUBSYSTEM:WINDOWS)
再修改:链接器->高级->入口点设为mainCRTStartup
再次建议只修改release的配置。
7.运行结果如下:
关于gtkmm库的使用可以点此进入
如果你想学习Gtk+编程的话可以点此进入
其他的不多说了,我是初学者,在这只是分享下我知道的。接下来我就要开始学习Gkt了。