XP下简单编译pidgin的fetion插件(2009-11-16版)

1月5日,移动升级了,结果pidgin里的fetion插件不能用了,赶紧到gradetwo 老大的专贴看看,果然是更新了,gradetwo 老大速度一流

因为没有编译好的包,只好自己抓了源代码下来自己编译,按照pidgin官方在windows编译指南里面的吧一些依赖包安装好,开始编译……但好像有问题:
我在mingw下 gcc.exe (GCC) 3.4.5 (mingw-vista special r3) 编译通不过,不知道什么原因
gcc.exe -shared fetion.o sipmsg.o -L../../../../win32-dev/gtk_2_0/lib -L../../../libpurple -lglib-2.0 -lws2_32 -lintl -lpurple -Wl,–enable-auto-image-base -o libfetion.dll
fetion.o: In function send_sip_request':
h:/Learn/Pidgin/pidgin-2.5.3/pidgin/plugins/fetion/fetion.c:462: undefined reference to
gencallid’
fetion.o: In function fetion_im_send':
h:/Learn/Pidgin/pidgin-2.5.3/pidgin/plugins/fetion/fetion.c:540: undefined reference to
fetion_send_message’
fetion.o: In function process_register_response':
h:/Learn/Pidgin/pidgin-2.5.3/pidgin/plugins/fetion/fetion.c:591: undefined reference to
fill_auth’
h:/Learn/Pidgin/pidgin-2.5.3/pidgin/plugins/fetion/fetion.c:608: undefined reference to do_register'
h:/Learn/Pidgin/pidgin-2.5.3/pidgin/plugins/fetion/fetion.c:559: undefined reference to
GetPersonalInfo’
h:/Learn/Pidgin/pidgin-2.5.3/pidgin/plugins/fetion/fetion.c:562: undefined reference to GetContactList'
h:/Learn/Pidgin/pidgin-2.5.3/pidgin/plugins/fetion/fetion.c:563: undefined reference to
GetContactList’
fetion.o: In function fetion_input_cb':
h:/Learn/Pidgin/pidgin-2.5.3/pidgin/plugins/fetion/fetion.c:772: undefined reference to
process_incoming_message’
h:/Learn/Pidgin/pidgin-2.5.3/pidgin/plugins/fetion/fetion.c:776: undefined reference to process_incoming_BN'
h:/Learn/Pidgin/pidgin-2.5.3/pidgin/plugins/fetion/fetion.c:781: undefined reference to
process_incoming_invite’
h:/Learn/Pidgin/pidgin-2.5.3/pidgin/plugins/fetion/fetion.c:657: undefined reference to parse_from'
h:/Learn/Pidgin/pidgin-2.5.3/pidgin/plugins/fetion/fetion.c:825: undefined reference to
fill_auth’
h:/Learn/Pidgin/pidgin-2.5.3/pidgin/plugins/fetion/fetion.c:826: undefined reference to auth_header'
h:/Learn/Pidgin/pidgin-2.5.3/pidgin/plugins/fetion/fetion.c:872: undefined reference to
fill_auth’
h:/Learn/Pidgin/pidgin-2.5.3/pidgin/plugins/fetion/fetion.c:873: undefined reference to auth_header'
fetion.o: In function
fetion_close’:
h:/Learn/Pidgin/pidgin-2.5.3/pidgin/plugins/fetion/fetion.c:1139: undefined reference to do_register_exp'
fetion.o: In function
fetion_actions’:………………………….

联系了gradetwo 老大,说没在windows下编译过,看来还得自己动手.看上面的字面意思就知道是文件有没有编译的,查看makefile.mingw 瀑布汗一个,里面只编译了两个文件,不知道是什么原因?自己动手把所有的文件添加到编译里面,发现好像又出错了,信息如下
f_smiley.c:27: warning: no previous prototype for ‘fetion_got_custom_smiley’
f_smiley.c: In function ‘fetion_got_custom_smiley’:
f_smiley.c:33: error: ‘slpcall’ undeclared (first use in this function)
f_smiley.c:33: error: (Each undeclared identifier is reported only once
f_smiley.c:33: error: for each function it appears in.)
f_smiley.c:38: error: ‘data’ undeclared (first use in this function)
f_smiley.c:38: error: ‘size’ undeclared (first use in this function)
f_smiley.c: At top level:
f_smiley.c:44: warning: no previous prototype for ‘fetion_got__chat’
f_smiley.c: In function ‘fetion_got__chat’:
f_smiley.c:46: error: ‘conv’ undeclared (first use in this function)
f_smiley.c:46: error: ‘who’ undeclared (first use in this function)
f_smiley.c:47: error: ‘session’ undeclared (first use in this function)
f_smiley.c:53: error: ‘smile’ undeclared (first use in this function)
f_smiley.c:53: error: ‘sha1’ undeclared (first use in this function)
f_smiley.c:54: error: implicit declaration of function ‘fetion_request_custom_smiley’
f_smiley.c:54: warning: nested extern declaration of ‘fetion_request_custom_smil

…………………………………..
很显然是f_smailey出错了,查看文件说明,这东西居然没出现在说明文件中,再瀑布汗一个,明显是一个新功能,估计是测试用的.直接删掉
现在看makefile.mingw 里编译的东东有:

## SOURCES, OBJECTS
##
C_SRC = f_buddy.c \
f_chat.c \
f_gchat.c \
f_group.c \
f_login.c \
f_portrait.c \
f_sysmsg.c \
f_user.c \
f_util.c \
f_zone.c \
fetion.c
sipmsg.c

拷贝过去,确实不错,又可以开心的开始pidgin之旅了
再次感谢gradetwo 提供的好软件

顺便把编译好的插件(libfetion.dll. libfetion,只能用在XP下哦)放这里,以便不想自己编译的同志们使用libfetion插件

更新了下,这两天使用不顺手,就用最新的版本编译了下,放在这里,有需要的下

9 thoughts on “XP下简单编译pidgin的fetion插件(2009-11-16版)

  1. 这两天一直发不出信息(xp/pidgin2.6.1.0/fetion你编的插件), 后来上中国移动的飞信, 貌似协议启用证书加密了..

  2. 先谢谢博主的劳动,不过我想问,最新的libfetion.dll在pidgin 2.6.3下面无法登录(Invalid Password or Mobileno),间或还会导致pidgin崩溃,是否pidgin版本不对?

Leave a Reply

Your email address will not be published. Required fields are marked *