CentOS 5 上的 Firefox 4
随着 mozilla.com 发布 Firefox 4,CentOS 5.x 内的 libstd++ 不能满足执行该版 Firefox 的需求。你按一般方法安装 Firefox 会遇到以下的错误:
<某路径>/firefox-bin: <某路径>/libstdc++.so.6: version GLIBCXX_3.4.9 not found (required by <某路径>/libxul.so)
该问题已记载在这个 mozillazine 论坛议题(Firefox 4.0b9 and CentOS 5.5)。以下的解决辨法适用于 Firefox 4.0 版及 CentOS 5.6。
Mozilla 在他们的 bugzilla 内(错误 621704)表示,他们决定不会修正这个问题。
权宜之计就是将一个来自 Fedora、可在 CentOS-5 下运行、并且满足 Firefox-4 需求的 libstdc++.so.6 与 Firefox 的其它函式库一并放置在 Firefox-4 的目录里。由于你将会使用一个不被支持的 libstdc++.so.6 版本,你务必要把这个函式库只放进 Firefox 目录而不是系统般用的位置,因为后者会把它提供给其它程序。
安装下列组件是执行 mozilla.com 网站的 Firefox 4 的先决条件:
- alsa-lib
- atk
- cairo
- dbus-libs
- expat
- fontconfig
- freetype
- glib2
- glibc
- gtk2
- libcap
- libgcc
- libICE
- libjpeg
- libpng
- libSM
- libX11
- libXau
- libXcursor
- libXdmcp
- libXext
- libXfixes
- libXi
- libXinerama
- libXrandr
- libXrender
- libXt
- pango
- xulrunner
- zlib
你可以利用以下指令来安装它们:
yum install alsa-lib atk cairo dbus-libs expat fontconfig freetype glib2 glibc gtk2 libcap libgcc libICE libjpeg libpng libSM libX11 libXau libXcursor libXdmcp libXext libXfixes libXi libXinerama libXrandr libXrender libXt pango xulrunner zlib
i386 版安装
你需要下载 Mozilla 网站里最新版的 Firefox 4(注:这是 en-US 语系的最新 4.0 版安装。要取得其它语系或版本,你可浏览下列连结。最新的压缩文件名叫 firefox-4.0.tar.bz2):
你也需要下载一个合适的 libstdc++.so.6。在这个例子中,你可采用 Fedora 9 i386 的版本:
当你拥有这两个组件,请用以下方法将它们解压到一个目录内:
mkdir firefox4 mv firefox-4.0.tar.bz2 libstdc++-4.3.0-8.i386.rpm firefox4 cd firefox4 tar xvjf firefox-4.0.tar.bz2
上述做法会在现有层级创建一个 firefox 目录。现在我们须要解压 libstdc++ rpm 并将 libstd++.so 档复制至该 firefox 目录:
mkdir libstdc cd libstdc rpm2cpio ../libstdc++-4.3.0-8.i386.rpm | cpio -idv cp usr/lib/libstdc++.so.6.0.10 ../firefox/libstdc++.so.6 cd ..
现在你应该已返回你的 firefox4 目录,并且把函式库复制至 firefox 目录内。这个指令能告该你它的位置是否正确:
ls firefox/libstdc++.so.6
结果应该是:
firefox/libstdc++.so.6
现在你已准备好把 firefox 目录放置在任何一个用来执行它的位置。我一般会把它放置在 /usr/lib/firefox-4。首先,我先会转换身份为 root:
su
接着我会设置 root 为拥有者及复制文件:
chown -R root.root firefox cp -a firefox /usr/lib/firefox-4
现在你可以退出 root 的指令壳及利用以下指令执行 firefox:
/usr/lib/firefox-4/firefox
x86_64 版安装
你需要下载 Mozilla 网站里最新版的 Firefox 4(注:这是 en-US 语系的最新 4.0 版安装。要取得其它语系或版本,你可浏览下列连结。最新的压缩文件名叫 firefox-4.0.tar.bz2):
你也需要下载一个合适的 libstdc++.so.6。在这个例子中,你可采用 Fedora 9 x86_64 的版本:
当你拥有这两个组件,请用以下方法将它们解压到一个目录内:
mkdir firefox4 mv firefox-4.0.tar.bz2 libstdc++-4.3.0-8.x86_64.rpm firefox4 cd firefox4 tar xvjf firefox-4.0.tar.bz2
上述做法会在现有层级创建一个 firefox 目录。现在我们须要解压 libstdc++ rpm 并将 libstd++.so 档复制至该 firefox 目录:
mkdir libstdc cd libstdc rpm2cpio ../libstdc++-4.3.0-8.x86_64.rpm | cpio -idv cp usr/lib64/libstdc++.so.6.0.10 ../firefox/libstdc++.so.6 cd ..
现在你应该已返回你的 firefox4 目录,并且把函式库复制至 firefox 目录内。这个指令能告该你它的位置是否正确:
ls firefox/libstdc++.so.6
结果应该是:
firefox/libstdc++.so.6
现在你已准备好把 firefox 目录放置在任何一个用来执行它的位置。我一般会把它放置在 /usr/lib64/firefox-4。首先,我先会转换身份为 root:
su
接着我会设置 root 为拥有者及复制文件:
chown -R root.root firefox cp -a firefox /usr/lib64/firefox-4
现在你可以退出 root 的指令壳及利用以下指令执行 firefox:
/usr/lib64/firefox-4/firefox
Translation of revision 3
