-- AndrewCudd - 16 Jun 2015

Installing Skype

Skype is a very useful communication program that many group members use, so it would be nice to have it installed on your Linux machine. However installing Skype on Linux can have issues, particularly if you are running something based off of Red Hat, such as Scientific Linux. This page details at least one working method for installing the latest version of Skype (version 4.3.0.37 of writing) on a Scientific Linux 7 machine. The majority of these instructions are taken from here, and the Skype FAQ page.

If you're not trying to install on a Scientific Linux machine, then you might be able to install Skype using your respective package manager, such as apt or yum, or by downloading the appropriate package from the Skype website.

To install Skype first you must download the proper version of Skype, which can be found on the Skype website, or done through a terminal command. The version needed is Skype for Linux Dynamic, which can be found under the "Choose your distribution" menu. To do it in a terminal command, use (which will download to your current working directoy as typed):
user@host $ wget --trust-server-names http://www.skype.com/go/getskype-linux-dynamic

Once Skype has been downloaded the next step is to install the needed libraries and dependencies. Skype (or at least Skype dynamic) is a 32-bit architecture program, which then needs 32-bit versions of libraries. To install the dependencies run the following command (probably with sudo access):
user@host $ yum install alsa-lib.i686 fontconfig.i686 freetype.i686 \ glib2.i686 libSM.i686 libXScrnSaver.i686 libXi.i686 \ libXrandr.i686 libXrender.i686 libXv.i686 libstdc++.i686 \ pulseaudio-libs.i686 qt.i686 qt-x11.i686 zlib.i686 qtwebkit.i686
That should install most, if not all, the needed libraries for Skype. Now it's time to "install" skype itself. To do this, simply unpack the Skype tarball into where you want to install Skype such as /opt/skype or /usr/local/share/skype or even your home directory, just make sure the directory exists and that you have write access. Once Skype is unpacked, theoretically it has been fully installed if all the necessary libraries are in their proper places. You can test the installation by running the Skype executable like so:
user@host $ /path/to/directory/skype

If Skype starts up like normal, then you're all done and Skype has been installed. However, if Skype has thrown an error message, read on for how to fix some of the errors.


Super Installing Skype

So, if you're down here then Skype decided that everything was not exactly as it needs it to run; Skype has probably complained about not finding libraries. There are a couple library fixes below which should be all you need to get Skype running on Scientific Linux 7. These instructions can be found here, under Installing Skype on CentOS.

libQtWebKit.so.4

First download the pacakge containing the library we want, which can be done using wget:

user@host $ wget http://ftp.us.debian.org/debian/pool/main/q/qt4-x11/libqt4-webkit_4.6.3-4+squeeze1_i386.deb

Once the package is downloaded, use Archive Manager to extract the data.tar.gz file from the .deb package. Then untar the archive into your Skype directory, which can be done like so:

user@host $ tar xvf data.tar.gz -C /path/to/skype

Next we need to move the library we need to its proper place for Skype to find it. The library will be in the /usr/lib directory of the data.tar.gz archive that was just unpacked. Copy the libQtWebKit.so.4.6.3 file to /usr/lib directory of your file system. Note that this is the /usr directory located at root, and the copy will require root access. Once the library is in its proper place, we need to create some links to the library for Skype and other programs to use it properly, done like so:

user@host $ ln -s libQtWebKit.so.4.6.3 libQtWebKit.so.4.6
user@host $ ln -s libQtWebKit.so.4.6.3 libQtWebKit.so.4 

Creating the soft links will again require root access, but that should finally allow Skype to properly find the library. This is one way I found to fix the issue, there are certainly multiple ways to do so such as messing with the LD_LIBRARY_PATH or LD_PRELOAD variables.

libphonon.so.4

First download the pacakge containing the library we want, which can be done using wget:
user@host $ wget http://ftp.us.debian.org/debian/pool/main/q/qt4-x11/libqt4-phonon_4.6.3-4+squeeze1_i386.deb

Once the package is downloaded, use Archive Manager to extract the data.tar.gz file from the .deb package. Then untar the archive into your Skype directory, which can be done like so:
user@host $ tar xvf data.tar.gz -C /path/to/skype

Next we need to move the library we need to its proper place for Skype to find it. The library will be in the /usr/lib directory of the data.tar.gz archive that was just unpacked. Copy the libphonon.so.4.6.3 file to /usr/lib directory of your file system. Note that this is the /usr directory located at root, and the copy will require root access. Once the library is in its proper place, we need to create some links to the library for Skype and other programs to use it properly, done like so:
user@host $ ln -s libphonon.so.4.3.1 libphonon.so.4.3
user@host $ ln -s libphonon.so.4.3.1 libphonon.so.4

Creating the soft links will again require root access, but that should finally allow Skype to properly find the library. This is one way I found to fix the issue, there are certainly multiple ways to do so such as messing with the LD_LIBRARY_PATH or LD_PRELOAD variables.

libQtXmlPatterns.so.4

First download the pacakge containing the library we want (noticing a pattern?), which can be done using wget:
user@host $ wget http://ftp.us.debian.org/debian/pool/main/q/qt4-x11/libqt4-xmlpatterns_4.6.3-4+squeeze1_i386.deb

Once the package is downloaded, use Archive Manager to extract the data.tar.gz file from the .deb package. Then untar the archive into your Skype directory, which can be done like so:
user@host $ tar xvf data.tar.gz -C /path/to/skype

Next we need to move the library we need to its proper place for Skype to find it. The library will be in the /usr/lib directory of the data.tar.gz archive that was just unpacked. Copy the libQtXmlPatterns.so.4.6.3 file to /usr/lib directory of your file system. Note that this is the /usr directory located at root, and the copy will require root access. Once the library is in its proper place, we need to create some links to the library for Skype and other programs to use it properly, done like so:
user@host $ ln -s libQtXmlPatterns.so.4.6.3 libQtXmlPatterns.so.4.6
user@host $ ln -s libQtXmlPatterns.so.4.6.3 libQtXmlPatterns.so.4

Creating the soft links will again require root access, but that should finally allow Skype to properly find the library. This is one way I found to fix the issue, there are certainly multiple ways to do so such as messing with the LD_LIBRARY_PATH or LD_PRELOAD variables.
Topic revision: r4 - 17 Jun 2015, AndrewCudd
 

This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Foswiki? Send feedback