鱼C论坛

 找回密码
 立即注册
查看: 2856|回复: 4

[技术交流] C语言GUI程序设计-GTK图文系列-环境配置

[复制链接]
发表于 2014-10-4 10:37:47 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 G0398 于 2014-10-4 19:13 编辑

这一篇主要讲windows平台下GTK开发环境搭建
GTK下载链接:http://www.gtk.org/download/index.php

GTK下载

GTK下载



选择32位或64位,我这里是32位的xp系统,就点击32位的下载链接
GTK_download_32.jpg


这里的all-in-one bundle 就类似我们玩的游戏卡,x合一的。由于GTK需要好几个包,这里下载的bundle包就包含了所需的所有组件,省的大家一个一个下载了。


下载后解压到 d盘的GTK文件夹(D:\GTK),这个位置可以随便选择,记住自己解压的位置即可。


然后编辑系统环境变量,路径为 刚才解压文件夹\bin。
path.png



好,修改环境变量后,试下修改成功了没,打开命令行(Win+R cmd Enter)
输入pkg-config 回车,提示Must specify package names on the command line即为修改成功。
pkg_config.png


接下来下载 Code::Blocks,下载链接:http://www.codeblocks.org/downloads/26


codeblocks_download.png



这里我们下载第二个,带有windows平台下的gcc编译器


下载后双击安装,下一步,下一步...............


CodeBlocks_start.png

打开CodeBlocks选择GCC编译器,点击Set as default(设为默认编译器),OK


CodeBlocks_fileass.png

下来是设置文件关联,如果你想让所有的c/c++文件默认用CodeBlocks打开,那么就选择第三个。


OK之后就到了主界面了,现在开始配置编译器和连接器参数:


点击菜单栏的Setting(设置)>Compiler(编译器)


compiler_setting.png

输入命令:
`pkg-config --cflags gtk+-3.0`
然后切换到连接器设置选项



linker_setting.png



输入命令:


`pkg-config --libs gtk+-3.0`
注意这里的两条命令中 ` 这个符号为键盘上ESC下边那个按键输入的,不是单引号



这两条命令的作用是在编译器或连接器执行之前先通过shell执行这条命令,然后把这条命令的输出结果作为编译器或连接器的输入参数。


到这里,我们的开发环境已搭建完成,现在来新建一个GTK项目。


菜单栏:File>New>Project


选择Console 控制台项目


project_type.png



GO


Next


选择C语言


Next






设置项目标题和路径
project_path.png



Next


下来是编译器和Debug、Release路径配置,这里保留默认值
点击Finish(完成)


然后把main.c中的代码替换为:


#include <gtk/gtk.h>

int main (int   argc,char *argv[])
{
  GtkWidget *window;

  gtk_init (&argc, &argv);

  window = gtk_window_new (GTK_WINDOW_TOPLEVEL);

  g_signal_connect (window, "destroy", G_CALLBACK (gtk_main_quit), NULL);

  gtk_widget_show (window);

  gtk_main ();

  return 0;
}
buildandrun.png



点击Build and run


GTK_window.png





编译器和连接器噌噌噌噌  我们的第一个GTK窗口就出现了


由于之前我们新建的项目类型为控制台,所以运行的程序子系统为控制台程序
subsystem.png


后面就会出现一个黑漆漆的控制台窗口,前期先不用管它,这个窗口在输出日志信息时还是很有用的,先留着吧  以后我们用得到(其实添加一个编译器参数就可以把它去掉了)




下一讲主讲窗口的一些参数设置以及GTK离线文档的查看方式

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-10-4 16:22:51 | 显示全部楼层
饕餮中,支持Ing
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-10-4 18:53:05 | 显示全部楼层
顶一个。虽然没有Qt那么火
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-10-5 14:48:35 | 显示全部楼层
_DEBUG 发表于 2014-10-4 18:53
顶一个。虽然没有Qt那么火

是的  没用过Qt 不做评论  不过Qt貌似完全的C++接口,GTK是C接口,只喜欢C语言的可以学习一下
虽然是C语言的,里面还有一些面向对象的思想,我们可以学到的不仅仅是GUI程序设计,还能学到面向对象的框架的设计思路
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

头像被屏蔽
发表于 2014-11-1 02:22:32 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-25 05:23

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表