LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 739|回复: 3

一个关于libegg的问题,请指教

[复制链接]
发表于 2005-12-28 23:43:17 | 显示全部楼层 |阅读模式
我写了一个小的即时通信软件,我想模拟linux下面gaim那种托盘效果,就是在系统托盘上出现一个小图标,用于控制。
gtk+2.9版本已经提供了相应的控件,所以很容易实现这个功能。但是我用的是gtk+2.6.4,在该版本中还没有实现这个功能。所以,我只好借助于一个非官方的libegg库来实现这个功能。
我参考了这篇文章:http://bbs.lupaworld.com/htm_data/90/0511/11308.html
文章的大体意思是说,将eggtrayicon.c, eggtrayicon.h这两个文件下载到我的源程序目录中,然后在自己的程序中包含头文件,然后调用其函数。
然后再写好Makefile进行编译,但是编译的时候却出错了,错误就是处在这两个文件之中。
错误代码如下:
gcc -c trayicon.c `pkg-config --cflags gtk+-2.0`
gcc -c eggtrayicon.c `pkg-config --cflags gtk+-2.0`
eggtrayicon.c: In function `egg_tray_icon_class_init':
eggtrayicon.c:127: error: `GETTEXT_PACKAGE' undeclared (first use in this function)
eggtrayicon.c:127: error: (Each undeclared identifier is reported only once
eggtrayicon.c:127: error: for each function it appears in.)
make: *** [eggtrayicon.o] \u9519\u8bef 1

我的makefile代码如下:
CC = gcc
exipmsg:main.o mainwindow.o network.o utility.o treatmess.o recdialog.o popmenu.o trayicon.o eggtrayicon.o
        $(CC) -o exipmsg main.o mainwindow.o network.o utility.o treatmess.o recdialog.o popmenu.o trayicon.o `pkg-config --libs gtk+-2.0`
main.o:main.c config.h head.h ipmsg.h mainwindow.h
        $(CC) -c main.c `pkg-config --cflags gtk+-2.0`
mainwindow.o:mainwindow.c config.h head.h ipmsg.h mainwindow.h
        $(CC) -c mainwindow.c `pkg-config --cflags gtk+-2.0`
network.o:network.c network.h config.h head.h ipmsg.h
        $(CC) -c network.c `pkg-config --cflags gtk+-2.0`
utility.o:utility.c utility.h config.h head.h ipmsg.h
        $(CC) -c utility.c `pkg-config --cflags gtk+-2.0`
treatmess.o:treatmess.c head.h treatmess.h config.h ipmsg.h recdialog.h network.h
        $(CC) -c treatmess.c `pkg-config --cflags gtk+-2.0`                        
recdialog.o:recdialog.c recdialog.h config.h head.h ipmsg.h        
        $(CC) -c recdialog.c `pkg-config --cflags gtk+-2.0`
trayicon.o:trayicon.c trayicon.h head.h config.h popmenu.h ipmsg.h mainwindow.h
        $(CC) -c trayicon.c `pkg-config --cflags gtk+-2.0`
popmenu.o:popmenu.c popmenu.h config.h head.h ipmsg.h mainwindow.h
        $(CC) -c popmenu.c `pkg-config --cflags gtk+-2.0`
eggtrayicon.o:eggtrayicon.c eggtrayicon.h
        $(CC) -c eggtrayicon.c `pkg-config --cflags gtk+-2.0`
               
我不知道这个eggtrayicon还依赖于什么库以及什么头文件?我对gtk+2.0的整体结构还不是很清楚,只知道它是xlib的封装外加glib,pango等功能库。还请多多指点。谢谢!!!
发表于 2005-12-29 09:35:23 | 显示全部楼层
GETTEXT_PACKAGE??!
你是不是少包含了什么头文件?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-12-29 14:20:42 | 显示全部楼层
就是不知道是少了什么头文件?我觉得如果这个库设计的好的化,就不应该还需要手动修改eggtrayicon.h以及eggtrayicon.h。
有谁用过libegg库吗?这种非官方的东西看来用的人很少了。还请指教啊。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-12-29 17:58:44 | 显示全部楼层
请问,能否有人帮忙分析一下我文中提到那个例子?
或者有谁用过libegg,请帮个忙。
回复 支持 反对

使用道具 举报

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

本版积分规则

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