CentOS6.5 install the latest firefox version
In the current centOS6.5 installation CD, the firefox web browser version is too old, and it is an e-hpc version, that is, it cannot be automatically updated, this will cause the system to be installed, the default version of 17.0.10 is significantly different from the new version. For more information, see:
We can solve this problem by uninstalling the old version and installing the new version of firefox that can be automatically upgraded:
It must be noted that there are two ways to install the new version of firefox: automatic upgrade and installation through yum and download the latest version from the firefox official website;
Whether it's the centos official yum source server or the latest local third-party yum source server, the firefox version on it is new, but it should still lag behind the latest official version, it may even be earlier than the firefox version that can be automatically updated locally, as shown below:
Note that problems may sometimes occur after you use yum to upgrade to the new version of firefox,
For example, when you run the new firefox version, a message indicating that a gdk symbol (usually the name of a function) is undefined is displayed, and then exit .....
This involves the dependency of dynamic shared libraries used by firefox. One possible cause is that firefox depends on the shared library/usr/lib/firefox/libxul. so.
Use yum to download and Upgrade firefox from any software repository server on the network. Because it is not the latest official version, its libxul. so version is not the latest,
For the old version of libxul. so, it depends on the latest libgdk shared library;
If we cannot ensure that libgdk is in the latest version at any time, when libxul. so referencing a symbol that does not exist in the libgdk on the current system will cause firefox to fail to start (crash) and give an undefined error message for the symbol xx with the gdk _ prefix;
However, firefox 33.0 and later versions of mozilla have solved their own shared libraries.
Libxul. so dependency on the system shared library libgdk,
This is why firefox, Which is upgraded and installed through yum, will crash while running.
The reason why firefox can be started normally: The libxul. so versions of the two are different.
In addition, you can use yum to upgrade the old version libxul. so is dependent on libgdk to the latest version, but this is nothing more than a complicated, huge project, and it is very likely that the old version of libxul. so also depends on the latest version of the system shared library;
Let's take a look at the "dynamic dependency" of libxul. so"
[Root @ centos6-5vm desktop] # cd/usr/lib/firefox/[root @ centos6-5vmfirefox] # lllibxul. so-rwxr-xr-x.1rootroot60391628 August 04: 33libxul. so [root @ centos6-5vmfirefox] # lddlibxul. solinux-gate.so.1 => (0x0023c000) libpthread. so.0 =>/lib/libpthread. so.0 (0x003ff000) environment =>/usr/lib/libraries (0x00e04000) libssl3.so =>/usr/lib/libraries (Libraries) libnss3.so =>/usr/lib/libnss3.so (0x00ae4000) libnssutil3.so =>/usr/lib/libnssutil3.so (0x00ee4000) libXrender. so.1 =>/usr/lib/libXrender. so.1 (0x00f6f000) libXext. so.6 =>/usr/lib/libXext. so.6 (0x00cc8000) libXdamage. so.1 =>/usr/lib/libXdamage. so.1 (0x00732000) libXfixes. so.3 =>/usr/lib/libXfixes. so.3 (0x00780000) libXcomposite. so.1 =>/usr/lib/libXcomposite. so.1 (0x009af000) lib1_sqlite3.so =>/usr/lib/xulrunner/lib1_sqlite3.so (0x00175000) libasound. so.2 =>/lib/libasound. so.2 (0x0023d000) librt. so.1 =>/lib/librt. so.1 (0x00203000) libnspr4.so =>/lib/libnspr4.so (0x00329000) Labels =>/lib/libplc4.so (0x006d8000) libplds4.so =>/lib/libplds4.so (release) libplusalloc. so =>/usr/lib/xulrunner/libw.alloc. so (0x0020c000) libdbus-glib-1.so.2 =>/usr/lib/libdbus-glib-1.so.2 (0x00ab7000) libdbus-1.so.3 =>/lib/libdbus-1.so.3 (0x00367000) libgobject-2.0.so.0 =>/lib/libgobject-2.0.so.0 (0x003ae000) libglib-2.0.so.0 =>/lib/libglib-2.0.so.0 (0x0041a000) libgtk-x11-2.0.so.0 =>/usr/lib/libgtk-x11-2.0.so.0 (0x00f78000) libatk-1.0.so.0 =>/usr/lib/libatk-1.0.so.0 (0x0052e000) libgio-2.0.so.0 =>/lib/libgio-2.0.so.0 (0x0054d000) libpangoft2-1.0.so.0 =>/usr/lib/libpangoft2-1.0.so.0 (0x0020f000) libfreetype. so.6 =>/usr/lib/libfreetype. so.6 (0x00785000) libfontconfig. so.1 =>/usr/lib/libfontconfig. so.1 (0x00f3a000) libgdk-x11-2.0.so.0 =>/usr/lib/libgdk-x11-2.0.so.0 (0x0081d000) libgdk_pixbuf-2.0.so.0 =>/usr/lib/libgdk_pixbuf-2.0.so.0 (0x00667000) libpangocairo-1.0.so.0 =>/usr/lib/libpangocairo-1.0.so.0 (0x00686000) libpango-1.0.so.0 =>/usr/lib/libpango-1.0.so.0 (0x006de000) libcairo. so.2 =>/usr/lib/libcairo. so.2 (0x008d3000) libgmodule-2.0.so.0 =>/lib/libgmodule-2.0.so.0 (0x00d22000) libX11.so. 6 =>/usr/lib/libX11.so. 6 (0x03889000) libXt. so.6 =>/usr/lib/libXt. so.6 (0x009b2000) libgthread-2.0.so.0 =>/lib/libgthread-2.0.so.0 (0x003fa000) libdl. so.2 =>/lib/libdl. so.2 (0x0073e000) libstdc ++. so.6 =>/usr/lib/libstdc ++. so.6 (0x03335000) libm. so.6 =>/lib/libm. so.6 (0x00743000) libgcc_s.so.1 =>/lib/libgcc_s.so.1 (0x00953000) libc. so.6 =>/lib/libc. so.6 (0x01417000)/lib/ld-linux.so.2 (0x00698000) libz. so.1 =>/lib/libz. so.1 (0x00971000) libresolv. so.2 =>/lib/libresolv. so.2 (0x00d29000) libselinux. so.1 =>/lib/libselinux. so.1 (0x0098a000) libexpat. so.1 =>/lib/libexpat. so.1 (0x00a0f000) libXinerama. so.1 =>/usr/lib/libXinerama. so.1 (0x00de9000) libXi. so.6 =>/usr/lib/libXi. so.6 (0x006b8000) libxrandroid. so.2 =>/usr/lib/libxrandroid. so.2 (0x00f1e000) libXcursor. so.1 =>/usr/lib/libXcursor. so.1 (0x00727000) libpng12.so. 0 =>/usr/lib/libpng12.so. 0 (0x00a37000) libpixman-1.so.0 =>/usr/lib/libpixman-1.so.0 (0x00c20000) libxcb. so.1 =>/usr/lib/libxcb. so.1 (0x00a5f000) libSM. so.6 =>/usr/lib/libSM. so.6 (0x00526000) libICE. so.6 =>/usr/lib/libICE. so.6 (0x00a7f000) libXau. so.6 =>/usr/lib/libXau. so.6 (0x00239000) libuuid. so.1 =>/lib/libuuid. so.1 (0x00692000)
Row 3 and row 36 are the libgdk-related shared libraries that libxul. so depends on;
As you can see, the firefox "built-in" Shared Library libxul. so depends on the number of other system shared libraries, which is extremely astonishing. Using yum to update these shared libraries one by one is undoubtedly a problem;
Therefore, we recommend that you download the latest tar.bz2 compressed package on the official website, which contains the binary executable file of firefox,
The compressed package contains the latest libxul. so shared library;
From this issue, it is not difficult to see that yum still needs to be enhanced in parsing Software Package dependencies, especially in terms of version compatibility.
In short, if firefox on centos6.5 cannot be automatically upgraded to the e-hpc version, and the version is outdated, we recommend that you follow the solution below:
1. Access
Http://www.firefox.com.cn
2. Enter the directory of the inventory file (firefox-latest.tar.bz2)
[Root @ centos6-5vm ~] # Cd/root/download
3. decompress the Firefox-latest.tar.bz2 in this directory, decompress it will generate a firefox subdirectory, which has the latest version of firefox binary executable files, as well as a variety of extension modules, plug-ins and so on
[Root @ centos6-5vm download] # ll total usage 41632-rw-r -- r --. 1rootroot1_30327 September 21 11: Large
4. Delete the old version firefox installed by default, usually in the/usr/lib directory.
[Root @ centos6-5vm download] # ll total usage 41636drwxr-xr-x.8503games4096 September 19 09: 55firefox-rw-r -- r --. 1rootroot42430327 September 21 11: 35Firefox-latest.tar.bz2 [root @ centos6-5vm download] # whereisfirefoxfirefox: /usr/bin/firefox/usr/lib/firefox/usr/share/man/man1/firefox.1.gz [root @ centos6-5vm download] # rm-rf/usr/lib/firefox
5. Copy the new firefox subdirectory under the current directory to the/usr/lib directory.
[Root @ centos6-5vm download] # mvfirefox/usr/lib
6. Go to the/usr/bin directory, delete the firefox script under it, return to the home directory or root directory, create a soft link, and point
/Usr/lib/firefox
[Root @ centos6-5vm download] # cd/usr/bin [root @ centos6-5vmbin] # llfirefox-rwxr-xr-x.1rootroot6546 October 30 2013 firefox [root @ centos6-5vmbin] # rmfirefoxrm: whether to delete a common file "firefox "? Y [root @ centos6-5vmbin] # cd [root @ centos6-5vm ~] # Ln-s/usr/lib/firefox/usr/bin/firefox
7. Execute the firefox command on the shell terminal to start the latest firefox version (confirm that all earlier firefox processes have been terminated before startup)
-1 [root @ centos6-5vm ~] # Firefox
The reason why we created the soft link is that when the firefox command is executed in this step, the system finds the soft link firefox under the search path/usr/bin and points it to the real executable file path.
/Usr/lib/firefox
Note: For this step, firefox occupies a shell virtual terminal (pts/n) and the virtual terminal cannot execute any other commands until the firefox process is disabled,
Therefore, we modify the properties of the firefox browser icon in the upper-left corner of the system. In the text box on the right of the "command" field, enter
/Usr/lib/firefox % u
Close the dialog box and click the icon again to start firefox without occupying any shell virtual terminal.
If you do not want to use the version with the custom company logo above, you can also download the "pure version" from the official FTP site below ":
Http://download.cdn.mozilla.net/pub/mozilla.org/firefox/releases/latest/linux-i686/zh-CN/