LinuxSir.cn,穿越时空的Linuxsir!

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

[求助] 请问gaim1.5+openq0.3.2支持x86_64的机器吗?

[复制链接]
发表于 2005-10-12 15:50:09 | 显示全部楼层 |阅读模式
我在64位的环境下编译安装,没报什么错,装完以后gaim里也有qq的协议。
但是却无法登录qq的服务器,connected之后就没反应了。
其他gaim自带的协议如msn, yahoo, jabber都没问题。

是openq0.3.2不支持64位还是编译的时候需要什么特殊的设置?

我的操作系统版本是
Red Hat Enterprise Linux WS release 3 (Taroon Update 5)
Kernel 2.4.21-32.EL on an x86_64

gcc版本是gcc version 3.2.3 20030502 (Red Hat Linux 3.2.3-52)
make版本是
GNU Make version 3.79.1, by Richard Stallman and Roland McGrath.
Built for x86_64-redhat-linux-gnu
发表于 2005-10-17 18:04:40 | 显示全部楼层
是不是代理上网?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-10-19 15:04:12 | 显示全部楼层
是公司内网,但我们访问外网不需要另设代理。
我telnet到一个32位i686的机器上编译运行就没有问题,这两台机器的网关和路由是一样的。
那台机器装的是:
Red Hat Enterprise Linux WS release 3 (Taroon)
Kernel 2.4.21-4.ELsmp on an i686

而且我在terminal里面直接 telnet tcpconn2.tencent.com 80,显示我是可以连接的,说明网络方面应该没什么问题。

我猜应该是编译openq生成的库文件的问题,可能是32位机和64位机在登录的时候是发送的字节位数有差别。不过我对编程不熟,找不到问题具体在哪。

------------------------------------------------------

今天用debug模式运行gaim,抓了一下log,不知道有没有用
32位机器上正常登录的log:
(14:54:01) server: gaim 1.5.0 logging in xxxxxxx using QQ
(14:54:01) dns: Created new DNS child 25608, there are now 1 children.
(14:54:01) dns: Host 'tcpconn2.tencent.com' resolved
(14:54:01) proxy: Connecting to tcpconn2.tencent.com:80 with no proxy
(14:54:01) proxy: Connect would have blocked.
(14:54:01) proxy: Connected.
(14:54:01) QQ: ==> [13077] QQ_CMD_LOGIN, from (QQ Server 0100)
(14:54:01) QQ: ack [13077] QQ_CMD_LOGIN, remove from sendqueue
(14:54:01) QQ: Decrypt login reply packet with inikey, 11 bytes
(14:54:01) QQ: Redirected to new server: 219.133.49.6:80


64位机器上显示的log
(14:53:38) server: gaim 1.5.0 logging in xxxxxxx using QQ
(14:53:38) dns: Created new DNS child 16132, there are now 1 children.
(14:53:39) dns: Host 'tcpconn2.tencent.com' resolved
(14:53:39) proxy: Connecting to tcpconn2.tencent.com:80 with no proxy
(14:53:39) proxy: Connect would have blocked.
(14:53:39) proxy: Connected.
(14:53:43) accounts: Writing accounts to disk.
(14:53:49) QQ: <<< [31180] send again for 1 times!
(14:53:54) QQ: <<< [31180] send again for 2 times!
(14:53:59) QQ: <<< [31180] send again for 3 times!
(14:54:04) QQ: <<< [31180] send again for 4 times!
(14:54:09) QQ: <<< [31180] send again for 5 times!
(14:54:14) account: Disconnecting account
(14:54:14) connection: Disconnecting connection
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-10-19 15:08:11 | 显示全部楼层
两次登录不是同时进行的
因为两台机器的系统时间差了三分钟,所以看时间记录似乎一样
回复 支持 反对

使用道具 举报

发表于 2005-10-31 22:15:56 | 显示全部楼层
好象是有这个问题,我的64的机器也是不能登陆
编译完成之后,将协议拷贝到Gaim目录后,Gaim能够查到QQ协议,但是登陆的时候一直提示超时错误
可能是哪个字节出错误,不知道啥时候能修正这个错误
回复 支持 反对

使用道具 举报

发表于 2005-11-5 19:08:23 | 显示全部楼层
偶也是的,上不去......
回复 支持 反对

使用道具 举报

发表于 2005-11-15 18:49:03 | 显示全部楼层
我上网要代理,在FreeBSD下gaim-openq也是登录不了,一次都没成功过!!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-11-22 09:19:13 | 显示全部楼层
看来的确是openq的问题,不知道什么时候能出个64位的补丁
回复 支持 反对

使用道具 举报

发表于 2005-11-22 09:49:27 | 显示全部楼层
openq 加密文件里把 long 都换成 int, 重新编译即可.
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-11-22 14:31:08 | 显示全部楼层
Post by yunfan
openq 加密文件里把 long 都换成 int, 重新编译即可.



太感谢了,果然是这个问题!

原来64位里面的long int变成64bit了

不知道gaim里面的long int也要改成int吗? 我没改gaim,编译完好像也没什么问题....
回复 支持 反对

使用道具 举报

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

本版积分规则

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