LinuxSir.cn,穿越时空的Linuxsir!

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

分享:在Freebsd 5.4 中安装Lumaqq 2004

[复制链接]
发表于 2005-5-22 13:10:24 | 显示全部楼层 |阅读模式
声明:
本文属作者guanhuaming原创,如要转?K,勿必包含本声明

1. 到http://lumaqq.linuxsir.cn/main/ 中下载最新的在FreeBSD平台上用的Lumaqq2004 和相关补丁
2. 解压
tar zxvf lumaqq_2004-freebsd_gtk2_x86_no_jre.tar.gz
3. 打补丁
把补丁包解压出来的所有jar文件拷贝到LumaQQ的lib目录下,覆盖原来的文件。这样升级就完成了
4. 安装jdk1.4.2p7
到网上下载编译好的jdk-1.4.2p7.tbz,用pkg_add -v jdk-1.4.2p7.tbz 安装就是。
jdk-1.4.2p7.tbz包的下载位置可以用google搜索一下。
安装时,可能会提示少什么什么包,这时,同样可以用google搜索一下少掉的包名,然后下载下来用pkg_add -v 安装就是。

    好了,接下来进入Lumaqq目录,运行./lumaqq看看?郁闷的是出现了如下问题:
  1. ghm# setenv $JAVA_HOME /usr/local/jdk1.4.2
  2. ghm# lumaqq
  3. Exception in thread "main" java.lang.UnsatisfiedLinkError: /usr/local/LumaQQ/swt/libswt-pi-gtk-3062.so: Shared object "libgdk-x11-2.0.so.400" not found, required by "libswt-pi-gtk-3062.so"
  4.         at java.lang.ClassLoader$NativeLibrary.load(Native Method)
  5.         at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1560)
  6.         at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1485)
  7.         at java.lang.Runtime.loadLibrary0(Runtime.java:788)
  8.         at java.lang.System.loadLibrary(System.java:834)
  9.         at org.eclipse.swt.internal.Library.loadLibrary(Library.java:100)
  10.         at org.eclipse.swt.internal.gtk.OS.<clinit>(OS.java:19)
  11.         at org.eclipse.swt.internal.Converter.wcsToMbcs(Converter.java:63)
  12.         at org.eclipse.swt.internal.Converter.wcsToMbcs(Converter.java:54)
  13.         at org.eclipse.swt.widgets.Display.<clinit>(Display.java:118)
  14.         at edu.tsinghua.lumaqq.shells.MainShell.<init>(Unknown Source)
  15.         at edu.tsinghua.lumaqq.LumaQQ.main(Unknown Source)
复制代码


提示系统中少了libswt-pi-gtk-3062.so所要的库文件libgdk-x11-2.0.so.400。
实际上系统目录/usr/X11R6/lib中存在着libgdk-x11-2.0.so.600,只不过由于Lumaqq中的SWT版本太旧,用得却是libgdk-x11-2.0.so.400。那我们何不把Lumaqq中的SWT替换成现在的新版本呢?这样不就行了?方法请看步骤5:

5. 安装eclipse-3.0.1_4.tbz
pkg_add -v eclipse-3.0.1_4.tbz
eclipse-3.0.1_4.tbz包可用google搜索一下,网上现成的一大堆,下载下来安装就是。

6. 用eclipse-3.0.1_4中的swt替换Lumaqq中的swt旧版本。
安装完eclipse-3.0.1_4后,我们查看一下eclipse-3.0.1_4中swt的版本号:
cd /usr/local/eclipse/plugins/org.eclipse.swt.gtk_3.0.1/os/freebsd/x86/
ls
显示如下:
--------------------------------------------------------
libswt-atk-gtk-3063.so     libswt-gtk-3063.so
libswt-awt-gtk-3063.so     libswt-mozilla-gtk-3063.so
libswt-gnome-gtk-3063.so   libswt-pi-gtk-3063.so
---------------------------------------------------------

而到目前为止,Lumaqq 2004中的swt版本却是:
cd LumaQQ/swt
ls
----------------------------
libswt-atk-gtk-3062.so     libswt-gtk-3062.so
libswt-awt-gtk-3062.so     libswt-mozilla-gtk-3062.so
libswt-gnome-gtk-3062.so   libswt-pi-gtk-3062.so
--------------------------------------------------------
大家发现了吧?
接着把旧版本删除,用新版本替换就是。
rm -rdf LumaQQ/swt/*
cd /usr/local/eclipse/plugins/org.eclipse.swt.gtk_3.0.1/os/freebsd/x86/
cp * /XXXXX/LumaQQ/swt/ #注意更改相应的目标路径啊...

7. 接下来再进入Lumaqq目录,运行./lumaqq看看?很高兴了吧??呵呵,不巧的是又出现了问题了,显示如下:
---------------------------------------------------------

  1. ghm# setenv $JAVA_HOME /usr/local/jdk1.4.2
  2. ghm# ./lumaqq
  3. ghm# Exception in thread "main" java.lang.UnsatisfiedLinkError: no swt-pi-gtk-3062 in java.library.path
  4.         at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1491)
  5.         at java.lang.Runtime.loadLibrary0(Runtime.java:788)
  6.         at java.lang.System.loadLibrary(System.java:834)
  7.         at org.eclipse.swt.internal.Library.loadLibrary(Library.java:100)
  8.         at org.eclipse.swt.internal.gtk.OS.<clinit>(OS.java:19)
  9.         at org.eclipse.swt.internal.Converter.wcsToMbcs(Converter.java:63)
  10.         at org.eclipse.swt.internal.Converter.wcsToMbcs(Converter.java:54)
  11.         at org.eclipse.swt.widgets.Display.<clinit>(Display.java:118)
  12.         at edu.tsinghua.lumaqq.ui.MainShell.<init>(MainShell.java:312)
  13.         at edu.tsinghua.lumaqq.LumaQQ.main(LumaQQ.java:107)
复制代码

------------------------------------------------------------------
提示Lumaqq的main线程找不到/usr/local/LumaQQ/swt/libswt-pi-gtk-3062.so文件,这是因为我们刚才进行了swt替换,而新的swt的版本号是3063,大家知道怎么办了吧?对了,按步骤8改下名字就是了:

8. 更改swt文件的文件名(shit,Lumaqq中什么main为什么要硬编码指定死文件的版本号呢?)
-----------------------------------------------------------------
  1. mv libswt-atk-gtk-3063.so libswt-atk-gtk-3062.so     
  2. mv libswt-gtk-3063.so libswt-gtk-3062.so
  3. mv libswt-awt-gtk-3063.so libswt-awt-gtk-3062.so     
  4. mv libswt-mozilla-gtk-3063.so libswt-mozilla-gtk-3062.so
  5. mv libswt-gnome-gtk-3063.so libswt-gnome-gtk-3062.so   
  6. mv libswt-pi-gtk-3063.so libswt-pi-gtk-3062.so
复制代码

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

大功告成,这下最新的Lumaqq能很好地在我们的机子上运行了. 多省事啊,什么乱七八的linux程序兼容性支持等都不用安装了。
 楼主| 发表于 2005-5-22 13:18:03 | 显示全部楼层
如图:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

发表于 2005-5-23 12:01:27 | 显示全部楼层
不错 不错
回复 支持 反对

使用道具 举报

发表于 2005-5-25 16:57:42 | 显示全部楼层
我在fb5.4下用lumaqq没有出现搂主的这些错误,倒是提示一大堆的库文件找不到。我把那些提示找不到的库文件做个链接到系统上存在的相应文件就可以了
回复 支持 反对

使用道具 举报

发表于 2005-5-28 10:45:05 | 显示全部楼层
大哥能不能把你的那几个文件 上传一下  给我下载啊
我用eclipse for linux下的那几个文件 不行啊
装个eclipse有太费时间了
可以吗
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-5-29 13:07:13 | 显示全部楼层
Post by hfh
大哥能不能把你的那几个文件 上传一下  给我下载啊
我用eclipse for linux下的那几个文件 不行啊
装个eclipse有太费时间了
可以吗


新的swt文件下载:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-5-29 13:09:09 | 显示全部楼层
Post by demonidea
我在fb5.4下用lumaqq没有出现搂主的这些错误,倒是提示一大堆的库文件找不到。我把那些提示找不到的库文件做个链接到系统上存在的相应文件就可以了


你的阅读能力可能有点小问题。
回复 支持 反对

使用道具 举报

发表于 2005-5-29 17:22:33 | 显示全部楼层
先谢了 我去试试 起
回复 支持 反对

使用道具 举报

发表于 2005-6-1 22:25:33 | 显示全部楼层
何苦呢?这东西不好用。我在linux已经装好了,但我一直用gaim。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-6-2 08:42:10 | 显示全部楼层
gaim功能也太少了。
回复 支持 反对

使用道具 举报

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

本版积分规则

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