How to run Vivaldi on CentOS Linux 6.x (and likely RHEL6, Scientific Linux 6 etc.)



  • I just wanted to share my experiences with Vivaldi on CentOS 6.6 Linux here. CentOS is based on RedHat Enterprise Linux and has a typical lifecycle of 10 years. Being rather "conservative" in nature, its libstdc seems to be a bit too old for Vivaldi by default: [code]/usr/bin/vivaldi: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by /usr/bin/vivaldi)[/code] So, it wants the GLIBCXX symbol in version 3.4.15? What do we have instead? [code]$ strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX_3 GLIBCXX_3.4 GLIBCXX_3.4.1 GLIBCXX_3.4.2 GLIBCXX_3.4.3 GLIBCXX_3.4.4 GLIBCXX_3.4.5 GLIBCXX_3.4.6 GLIBCXX_3.4.7 GLIBCXX_3.4.8 GLIBCXX_3.4.9 GLIBCXX_3.4.10 GLIBCXX_3.4.11 GLIBCXX_3.4.12 GLIBCXX_3.4.13[/code] Close one, just not close enough. ;) Luckily, there are no other dependencies, and the solution is a bit time-consuming, but still easy enough to pull of. First, grab the latest GCC 4.8 from gnu.org: https://gcc.gnu.org/gcc-4.8/ Unpack it, and do the typical stuff: [code]$ ./configure $ make $ su # make install[/code] Beware, this might take hours to compile and eat around 5GiB of disk space for its work! It will however not only give you a newer GCC, but also a new libstdc++.so.6.0.19 instead of 6.0.13. This will sit in /usr/local/lib/ for pure 64-Bit machines or /usr/local/lib64 for x86 64-Bit multilib systems with 32-Bit support respectively. So, what have we got now? [code]$ strings /usr/local/lib64/libstdc++.so.6 | grep GLIBCXX_3 GLIBCXX_3.4 GLIBCXX_3.4.1 GLIBCXX_3.4.2 GLIBCXX_3.4.3 GLIBCXX_3.4.4 GLIBCXX_3.4.5 GLIBCXX_3.4.6 GLIBCXX_3.4.7 GLIBCXX_3.4.8 GLIBCXX_3.4.9 GLIBCXX_3.4.10 GLIBCXX_3.4.11 GLIBCXX_3.4.12 GLIBCXX_3.4.13 GLIBCXX_3.4.14 GLIBCXX_3.4.15 GLIBCXX_3.4.16 GLIBCXX_3.4.17 GLIBCXX_3.4.18 GLIBCXX_3.4.19[/code] Better! Still, Vivaldi won't use the library by default, so we need to tell it where to look for the alternate version. If you want to get it done at every launch, I'd suggest creating a script like /usr/local/sbin/vivaldi-launcher.sh, make it executable by chmod +x /usr/local/sbin/vivaldi-launcher.sh and have this inside: [code]#!/bin/sh LD_LIBRARY_PATH="/usr/local/lib64" /usr/bin/vivaldi[/code] This is for x86 64-Bit multilib, for pure 64-Bit releases, just change "lib64" to "lib"! After that, if you launch it by invoking vivaldi-launcher.sh, Vivaldi will run on CentOS 6 or similar systems just fine! :) [b]Edit[/b]: Fixed a few errors to take into account that Vivaldi currently exists only in a x86_64 flavor on Linux.



  • Thanks for sharing!

    In my case these are the dependence when I tried to run vivaldi:

    /usr/bin/vivaldi: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by /usr/bin/vivaldi)
    /usr/bin/vivaldi: /usr/lib64/libstdc++.so.6: version `CXXABI_1.3.5' not found (required by /usr/bin/vivaldi)
    /usr/bin/vivaldi: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (required by /usr/bin/vivaldi)
    

    With the same strings in libstdc++.so.6. After installed the gcc 4.8.5 I run vivaldi the library variable before the command:

    LD_PRELOAD=/usr/local/lib64/libstdc++.so.6.0.20 vivaldi
    

    Thanks again!



  • This looks like very good info for those affected, but… you accidentally posted it in the Windows forum rather than the Linux one. Can it be moved [via [i]Edit]?

    …....................................................................................
    My on-SSD OS = Linux Mint x64 17.3 KDE 4.14.2.


Log in to reply
 

Looks like your connection to Vivaldi Forum was lost, please wait while we try to reconnect.