gtk+-2.20.0 两个bug

本文介绍如何解决GTK+ 2.20.0版本中两个导致编译失败的问题,通过在gdk.symbols文件中添加特定代码及在gdkkeys-directfb.c中定义缺失函数来完成修复。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

gtk 官方最新的库gtk+-2.20.0有两个bug导致编译失败,可以通过下面方法修改:

(1)在gdk.symbols 871行后面增加:

863 #if IN_HEADER(__GDK_KEYS_H__)

864 #if IN_FILE(__GDK_KEYS_DIRECTFB_C__)

865 gdk_keymap_get_direction

866 gdk_keymap_get_entries_for_keycode

867 gdk_keymap_get_entries_for_keyval

868 gdk_keymap_get_for_display

869 gdk_keymap_get_caps_lock_state

870 gdk_keymap_lookup_key

871 gdk_keymap_translate_keyboard_state

+872 gdk_keymap_map_virtual_modifiers

+873 gdk_keymap_add_virtual_modifiers

874 gdk_keyval_from_name

875 gdk_keyval_name G_GNUC_CONST

876 #endif

877 #endif

(2)在gdk/directfb/gdkkeys-directfb.c 增加上面两个函数的定义

+ 2001 gboolean

+ 2002 gdk_keymap_map_virtual_modifiers (GdkKeymap *keymap,

+ 2003 GdkModifierType *state)

+ 2004 {

+ 2005 g_warning("gdk_keymap_add_virtual_modifiers unimplemented /n");

+ 2006 return TRUE;

+ 2007 }

+ 2008 void

+ 2009 gdk_keymap_add_virtual_modifiers (GdkKeymap *keymap,

+ 2010 GdkModifierType *state)

+ 2011 {

+ 2012 g_warning("gdk_keymap_map_virtual_modifiers unimplemented /n");

+ 2013 return TRUE;

+ 2014 }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值