|
|
安装openoffice时,使用emerge openoffice编译安装会正常使用,但是编译时间太长,时间不亚于安装gnome,同时还需要5G的硬盘空间做临时目录。所以改成openoffice-bin。
但使用emerge openoffice-bin时会出现一些问题。主要是按ctrl+space不能打开scim输入法。使用终端打开oowrite可以看到问题所在,显示如下内容:- $ oowriter
- (soffice:29985): Gtk-WARNING **: /usr/lib/openoffice/program/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by /usr/lib/gtk-2.0/immodules/im-scim.so)
- (soffice:29985): Gtk-WARNING **: Loading IM context type 'scim' failed
- ........
- .......
- $
复制代码
这时需要解决问题:编译安装与bin安装后的一些库文件指向不对。- # slocate libstdc++.so.6
- /usr/lib/gcc/i686-pc-linux-gnu/4.2.4/libstdc++.so.6.0.9
- /usr/lib/gcc/i686-pc-linux-gnu/4.2.4/libstdc++.so.6
- /usr/lib/openoffice/program/libstdc++.so.6.1
- /usr/lib/openoffice/program/libstdc++.so.6
- /opt/Adobe/Reader8/Reader/intellinux/lib/libstdc++.so.6.0.7
- /opt/Adobe/Reader8/Reader/intellinux/lib/libstdc++.so.6
- #
复制代码 由此可见:gcc里使用的是libstdc++.so.6.0.9,而openoffice里使用的是libstdc++.so.6.1,继续查看;- #ls -l /usr/lib/gcc/i686-pc-linux-gnu/4.2.4/libstdc++.so*
- lrwxrwxrwx 1 root root 18 2008-06-13 17:48 /usr/lib/gcc/i686-pc-linux-gnu/4.2.4/libstdc++.so -> libstdc++.so.6.0.9
- lrwxrwxrwx 1 root root 18 2008-06-13 17:48 /usr/lib/gcc/i686-pc-linux-gnu/4.2.4/libstdc++.so.6 -> libstdc++.so.6.0.9
- -rwxr-xr-x 1 root root 933704 2008-06-13 17:48 /usr/lib/gcc/i686-pc-linux-gnu/4.2.4/libstdc++.so.6.0.9
- # ls -l /usr/lib/openoffice/program/libstdc++.so*
- lrwxrwxrwx 1 root root 16 2008-06-15 14:06 libstdc++.so.6 -> libstdc++.so.6.1
- -r--r--r-- 1 root root 846672 2008-05-30 00:59 libstdc++.so.6.1
复制代码 所以修改 penoffice下的libstdc++.so.6指向libstdc++.so.6..0.9- #cd /usr/lib/openoffice/program/
- #ln -sf /usr/lib/gcc/i686-pc-linux-gnu/4.2.4/libstdc++.so.6.0.9 libstdc++.so.6
- #ls -l libstdc++.so*
- lrwxrwxrwx 1 root root 55 2008-06-15 14:24 libstdc++.so.6 -> /usr/lib/gcc/i686-pc-linux-gnu/4.2.4/libstdc++.so.6.0.9
- -r--r--r-- 1 root root 846672 2008-05-30 00:59 libstdc++.so.6.1
复制代码
继续运行oowrite,查看结果:- $ oowriter
- /usr/lib/openoffice/program/javaldx: /usr/lib/openoffice/program/libgcc_s.so.1: version `GCC_4.2.0' not found (required by /usr/lib/openoffice/program/libstdc++.so.6)
- /usr/lib/openoffice/program/pagein: /usr/lib/openoffice/program/libgcc_s.so.1: version `GCC_4.2.0' not found (required by /usr/lib/openoffice/program/libstdc++.so.6)
- /usr/lib/openoffice/program/soffice.bin: /usr/lib/openoffice/program/libgcc_s.so.1: version `GCC_4.2.0' not found (required by /usr/lib/openoffice/program/libstdc++.so.6)
- $
复制代码
还有libgcc_s.so.1的指向有问题,继续修改:- $ ll /usr/lib/openoffice/program/libgcc_s.so*
- lrwxrwxrwx 1 root root 17 2008-06-15 13:48 libgcc_s.so.1 -> libgcc_s.so.1.1.1
- -r--r--r-- 1 root root 33076 2008-05-30 01:00 libgcc_s.so.1.1.1
- $ slocate libgcc_s.so
- /usr/lib/gcc/i686-pc-linux-gnu/4.2.4/libgcc_s.so.1
- /usr/lib/gcc/i686-pc-linux-gnu/4.2.4/libgcc_s.so
- /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.6/libgcc_s.so.1
- /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.6/libgcc_s.so
- /usr/lib/openoffice/program/libgcc_s.so.1.1.1
- /usr/lib/openoffice/program/libgcc_s.so.1
- /opt/Adobe/Reader8/Reader/intellinux/lib/libgcc_s.so.1
- /opt/Adobe/Reader8/Reader/intellinux/lib/libgcc_s.so
- /lib/libgcc_s.so.1
- $ ll /usr/lib/gcc/i686-pc-linux-gnu/4.2.4/libgcc_s.so*
- lrwxrwxrwx 1 root root 13 2008-06-13 17:48 /usr/lib/gcc/i686-pc-linux-gnu/4.2.4/libgcc_s.so -> libgcc_s.so.1
- -rw-r--r-- 1 root root 42348 2008-06-13 17:48 /usr/lib/gcc/i686-pc-linux-gnu/4.2.4/libgcc_s.so.1
- $ su
- # pwd
- /usr/lib/openoffice/program
- # ln -sf /usr/lib/gcc/i686-pc-linux-gnu/4.2.4/libgcc_s.so.1 libgcc_s.so.1
复制代码
修改完成,继续测试:一切正常运作,ok! |
|