免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2958 | 回复: 4
打印 上一主题 下一主题

编译gtk+程序遇到问题!~ [复制链接]

tangzichao 该用户已被删除
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-02-13 15:07 |只看该作者 |倒序浏览
提示: 作者被禁止或删除 内容自动屏蔽
tangzichao 该用户已被删除
2 [报告]
发表于 2008-02-13 15:18 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
3 [报告]
发表于 2008-02-13 18:58 |只看该作者
给你个例子试试能通过吗,
window.c:

#include<gtk/gtk.h>
int main(int argc,char **argv)
{
GtkWidget *window;
gtk_init(&argc,&argv);

window=gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_window_set_title(GTK_WINDOW(window),"最简单的窗口");
gtk_window_set_position(GTK_WINDOW(window),GTK_WIN_POS_CENTER);
gtk_signal_connect(GTK_OBJECT(window),"destroy",GTK_SIGNAL_FUNC(gtk_main_quit),NULL);

gtk_widget_show(window);
gtk_main();

return FALSE;

}

Makefile:

cc = gcc
all:
    $(cc) -Wall -o window window.c `pkg-config --cflags --libs gtk+-2.0`

将上边的Windows下保存为windows.c文件,Makefile下的内容为Makefile文件,和windows.c保存在同一目录,然后运行make && ./window

如果成功就证明Gtk环境配置没什么问题。。你说的那个我不太清楚,可以把源文件发出来看看。。

论坛徽章:
0
4 [报告]
发表于 2008-02-23 11:25 |只看该作者

回复 #1 tangzichao 的帖子

这种情况,可以先在控制台运行:pkg-config --libs gtk+-2.0,pkg-config --cflags gtk+-2.0,
将输出信息加载到Makefile里面.
具体在makefile里面设置个变量。大概象下面的.

var=-lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangocairo-1.0 -lfontconfig -lXext -lXrender -lXinerama -lXi -lXrandr -lXcursor -lXcomposite -lXdamage -lpango-1.0 -lcairo -lX11 -lXfixes -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0
......
         gcc -o window window.c  $(var)
......
就可以了。

论坛徽章:
0
5 [报告]
发表于 2008-03-10 20:01 |只看该作者

tips

在编译的时候要注意以下2点:
1、检查自己的linux版本中的gtk是1.0还是2.0的,不同的版本编译的时候后缀不同
2、后缀是用Esc下方的那个键,而不是单引号,这一点对新手来说很容易弄错,并且很长时间也不知道自己什么地方错了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP