LinuxSir.cn,穿越时空的Linuxsir!

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

Fedora 8 下安装 Sun JDK 的方法

[复制链接]
发表于 2007-11-9 10:58:02 | 显示全部楼层 |阅读模式
4 楼给出了较为稳妥的方案
-----------------------------------------------
Fedora 8 所包含的 JAVA,效果不是很好,在使用 Freemind 时,绘制的图形线条非常粗糙,有些 JAVA 程序不能正常工作。所以离了 Sun JDK 还是不行。

在安装 Sun JDK 之前,要 hack 一下 libxcb,原因见 http://linuxsir.cn/bbs/thread316210.html 的第一个帖子,解决方法见第 5 帖。

然后就可以按照常规的 Sun JDK 安装方法进行了。
发表于 2007-11-9 11:50:20 | 显示全部楼层
尝试升级你的freemind到0.9.0 Beta 13版本,也许Fedora自带的Java表现并不是那么差。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-11-9 11:57:51 | 显示全部楼层
我用的是 freemind 0.9.0 beta 14。

另外像 xxe 这样的工具没法运行。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-11-11 09:29:41 | 显示全部楼层
F8 下 Sun JAVA 具体安装方法见:
http://www.my-guides.net/en/content/view/91/26/1/5/#java

在该页面中也给出了关于 JAVA libxcb bug 的新的解决方法:

Currently there is a bug with Sun Java because it is incompatible with the newer libX11 included in Fedora 8. If you get an error like this xcb_xlib.c:50: xcb_xlib_unlock: Assertion 'c->xlib.lock' failed here is the workaround:

For sun-java5-bin:

  1. # sed -i 's/XINERAMA/FAKEEXTN/g' /usr/lib/jvm/java-1.5.0-sun-1.5.0.11/jre/lib/i386/xawt/libmawt.so
复制代码


For sun-java6-bin:

  1. # sed -i 's/XINERAMA/FAKEEXTN/g' /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/xawt/libmawt.so
复制代码

The same fix (applied to the appropriate file) might work for other proprietary JDKs.
回复 支持 反对

使用道具 举报

发表于 2007-11-11 09:31:48 | 显示全部楼层
这个 fix 真牛
回复 支持 反对

使用道具 举报

发表于 2007-11-11 17:33:28 | 显示全部楼层
只能看懂把每行所有XINERAMA替换为FAKEEXTN。
请问下-i参数是干什么的?
回复 支持 反对

使用道具 举报

发表于 2007-11-11 17:37:53 | 显示全部楼层
Post by lyanry;1779699
4 楼给出了较为稳妥的方案
-----------------------------------------------
Fedora 8 所包含的 JAVA,效果不是很好,在使用 Freemind 时,绘制的图形线条非常粗糙,有些 JAVA 程序不能正常工作。所以离了 Sun JDK 还是不行。

在安装 Sun JDK 之前,要 hack 一下 libxcb,原因见 http://linuxsir.cn/bbs/thread316210.html 的第一个帖子,解决方法见第 5 帖。

然后就可以按照常规的 Sun JDK 安装方法进行了。
那个帖子中的办法不知道有没有副作用,还有一个办法应该更好:
对于sun-java5-bin,执行:
sed -i 's/XINERAMA/FAKEEXTN/g' /usr/lib/jvm/java-1.5.0-sun-1.5.0.11/jre/lib/i386/xawt/libmawt.so
对于sun-java6-bin,执行:
sed -i 's/XINERAMA/FAKEEXTN/g' /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/xawt/libmawt.so
即可。具体路径,按你自己的实际情况来填。
回复 支持 反对

使用道具 举报

发表于 2007-11-11 19:54:34 | 显示全部楼层
sed -i 's/XINERAMA/FAKEEXTN/g' $JAVA_HOME/jre/lib/i386/xawt/libmawt.so
问题解决了,可会对系统造成什么影响吗?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-11-11 19:57:24 | 显示全部楼层
Post by 南蛮XP;1780977
sed -i 's/XINERAMA/FAKEEXTN/g' $JAVA_HOME/jre/lib/i386/xawt/libmawt.so
问题解决了,可会对系统造成什么影响吗?


对系统没有大影响,你改的只是一个 java 库而已,最坏也就是一些 java 程序不能正常运行。
回复 支持 反对

使用道具 举报

发表于 2007-11-12 02:44:53 | 显示全部楼层
我改了,还是不行,呵呵。
[root@phy-208 xawt]# sed -i 's/XINERAMA/FAKEEXTN/g' libmawt.so
[root@phy-208 xawt]# matlab71
MATLAB: xcb_xlib.c:50: xcb_xlib_unlock: Assertion `c->xlib.lock' failed.
/usr/local/bin/matlab71: line 31:  4801 Aborted                 $MATLABPATH/bin/matlab
回复 支持 反对

使用道具 举报

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

本版积分规则

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