当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 2 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : Kubuntu 9.04升级后永中出错的解决办法
帖子发表于 : 2009-07-11 9:23 

注册: 2008-10-31 17:45
帖子: 18
送出感谢: 0 次
接收感谢: 0 次
今天终于找到永中在我的Kubuntu中出错的原因了,在这里记录下,以免日后遗忘。

问题描述:
自从我的Kubuntu 9.04升级到kde 4.2.4界面后我的永中 Office就开始出问题了。首先是打开MS的文档不能保存,然后逐步发展到一保存MS的文档永中就自动退出。后来我以为是升级后永中组件出了问题,于是手动卸载了永中(好像Kubuntu下rmeio一点用都没有)。这不卸载还好,一卸载连安装都出错了。安装出错表现为在最后一步配置的时候,还没配置完就自动退出,而且终端里还有如下出错信息:

# An unexpected error has been detected by HotSpot Virtual Machine:
#
# SIGSEGV (0xb) at pc=0xb7d2c195, pid=4910, tid=2466642832
#
# Java VM: Java HotSpot(TM) Client VM (1.5.0_01-b08 mixed mode)
# Problematic frame:
# C [libX11.so.6+0x1c195] XFreeFontSet+0x15
#
# An error report file with more information is saved as hs_err_pid4910.log
#
# If you would like to submit a bug report, please visit:
# http://java.sun.com/webapps/bugreport/crash.jsp
#
setup: line 20: 4910 忽略 $java_home/bin/java -jar $progdir/dispose.jar $ARG1 2>/dev/null

这可关系到平时办公阿,于是我装了个VirtualBox3.0虚拟了XP装了个永中先用着,有时间的时候就来倒腾linux下的永中,半个月过去了终于倒腾出了点道理,也找到了解决办法。

解决办法:
第一步,修改永中的安装脚本setup.sh(注意红色部分,出错的原因就是这里了。永中的开发者只顾虑到了Gnome界面的用户,因此在kde界面安装配置时出错,导致永中不能正常使用,所以需要把这几行注释掉,嘿嘿,当然删除也是没问题的。)
命令:Dolphin进入永中解压后的文件夹右键,在“打开方式”中选择“kate”

修改后:
#!/bin/bash
INSTALL_INFO_FILE=/etc/Evermore/EIOffice/installinfo.cfg
FONT_PATH=/usr/X11R6/lib/X11/fonts/TrueType
LOG_FILE=/tmp/setuplog.txt
ARG1=$1

unzipJar () {
JRE_PATH=/tmp/EIOffice/Jre
$JRE_PATH/bin/unpack200 -r $JRE_PATH/lib/plugin.pack.gz $JRE_PATH/lib/plugin.jar
$JRE_PATH/bin/unpack200 -r $JRE_PATH/lib/rt.pack.gz $JRE_PATH/lib/rt.jar
$JRE_PATH/bin/unpack200 -r $JRE_PATH/lib/charsets.pack.gz $JRE_PATH/lib/charsets.jar
$JRE_PATH/bin/unpack200 -r $JRE_PATH/lib/deploy.pack.gz $JRE_PATH/lib/deploy.jar
$JRE_PATH/bin/unpack200 -r $JRE_PATH/lib/javaws.pack.gz $JRE_PATH/lib/javaws.jar
$JRE_PATH/bin/unpack200 -r $JRE_PATH/lib/ext/tools.pack.gz $JRE_PATH/lib/ext/tools.jar
$JRE_PATH/bin/unpack200 -r $JRE_PATH/lib/ext/bcprov-jdk14-124.pack.gz $JRE_PATH/lib/ext/bcprov-jdk14-124.jar
$JRE_PATH/bin/unpack200 -r $JRE_PATH/lib/ext/jmf.pack.gz $JRE_PATH/lib/ext/jmf.jar
$JRE_PATH/bin/unpack200 -r $JRE_PATH/lib/ext/jai_core.pack.gz $JRE_PATH/lib/ext/jai_core.jar
}

newInstallMode () {
if [ ! -e $FONT_PATH ];then
echo "create font dir" >> $LOG_FILE
mkdir -p $FONT_PATH
fi
echo "start copy fonts" >> $LOG_FILE
cp $progdir/font/* $FONT_PATH/

echo "start unzip Jre" >> $LOG_FILE
unzip $progdir/Jre.zip -d /tmp/EIOffice/ &> /dev/null
unzipJar
java_home=/tmp/EIOffice/Jre

sed -i 's/XINERAMA/FAKEEXTN/g' $java_home/lib/i386/xawt/libmawt.so
echo "start run dispose.jar" >> $LOG_FILE
$java_home/bin/java -jar $progdir/dispose.jar $ARG1 2>/dev/null

####安装FC8,修改libmawt.so
if test -f $INSTALL_INFO_FILE ; then
exec 4<&0 0<$INSTALL_INFO_FILE
read line1
sed -i 's/XINERAMA/FAKEEXTN/g' $line1/Jre/lib/i386/xawt/libmawt.so
fi

rm -rf /tmp/EIOffice
}

doClean () {
if [ ! -f $INSTALL_INFO_FILE ];then
rm -rf $line3
rm -rf $line1/Jre
fi
}

PRG=$0

#
# resolve symlinks
#

while [ -h "$PRG" ]; do
ls=`ls -ld "$PRG"`
link=`expr "$ls" : '^.*-> \(.*\)$' 2>/dev/null`
if expr "$link" : '^/' 2> /dev/null >/dev/null; then
PRG="$link"
else
PRG="`dirname $PRG`/$link"
fi
done

progdir=`dirname $PRG`
progname=`basename $0`


if [ ! -w /root ];then
echo "only root can do that!"
exit
fi

#if test -n "$(grep "Ubuntu" /proc/version)"; then
#export AWT_TOOLKIT=MToolkit
#else
#export AWT_TOOLKIT=XToolkit
#fi


#卸载模式
if test -f $INSTALL_INFO_FILE ; then
exec 4<&0 0<$INSTALL_INFO_FILE
read line1
read line2
read line3
exec 0<&4

if [ -f $line1/Jre/bin/java ] && [ -f $line3/dispose.jar ] && [ -f $line3/disposelog.xml ]; then
echo "start uninstallMode" >> $LOG_FILE
java_home=$line1/Jre
$java_home/bin/java -jar $progdir/dispose.jar 2>/dev/null
doClean
else
echo "uninstall file error,start newInstallMode" >> $LOG_FILE
rm -rf $line1
rm -rf $line3
rm -rf $INSTALL_INFO_FILE
newInstallMode
fi
#新安装模式
else
echo "start newInstallMode" >> $LOG_FILE
newInstallMode

fi

echo "exit" >> $LOG_FILE
exit

第二步,安装完成后修改“/usr/bin”目录的“eio”文件(同样注意红色部分)
命令:kdesudo kate /usr/bin/eio

修改后:
#!/bin/bash
#if test -n "$(grep "Ubuntu" /proc/version)"; then
#export AWT_TOOLKIT=MToolkit
#else
#export AWT_TOOLKIT=XToolkit
#fi

exec 4<&0 0</etc/Evermore/EIOffice/installinfo.cfg
read line1
exec 0<&4

$line1/EIOffice.bin ${@:+"$@"} 2>/dev/null

到此永中就能够用命令行输入“eio”启动和使用了,但是为了方便使用我们再修改一下永中的图标文件,让用中能够在“打开方式”中显示。
命令:kdesudo kate /usr/share/applications/eio.desktop

修改后(删除eio.desktop中最后一行:"Onlyshow=GNOME;",我为了好看呢顺便把里面的个人版字样删除了,以免启动图标名称太长):
[Desktop Entry]
Version=1.0
Encoding=UTF-8
Exec=/usr/bin/eio
Terminal=false
Type=Application
Icon=/usr/share/eiofileicon/eio.png
Categories=GNOME;Application;Office;X-Red-Hat-Base;
MimeType=application/x-eio;application/msword;application/vnd.ms-excel;application/vnd.ms-powerpoint;application/eit;application/ees;application/eiw;application/uof;
Name=启动永中集成Office
Name[zh_CN]=启动永中集成Office

修改完成重启计算机,哈哈,我的永中终于恢复正常了。

这里再备份一个自己弄的卸载永中的脚本(使用方法,sudo ./uninstall.sh):
附件:
文件注释: 永中卸载脚本
uninstall.sh.tar.gz [229 Bytes]
被下载 9 次


页首
 用户资料  
 
2 楼 
 文章标题 : Re: Kubuntu 9.04升级后永中出错的解决办法
帖子发表于 : 2009-07-11 18:04 
头像

注册: 2008-06-11 11:23
帖子: 508
地址: 金华
送出感谢: 0 次
接收感谢: 0 次
强帖,谢谢分享!


_________________
http://groups.google.com/group/weeklybuilds?hl=zh-CN


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 2 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 4 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译