7

My environment:

$ cat /etc/redhat-release 
CentOS Linux release 7.4.1708 (Core) 
$ uname -a
Linux X 3.10.0-693.5.2.el7.x86_64 #1 SMP Fri Oct 20 20:32:50 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
$ rpm -q glibc
glibc-2.17-196.el7.x86_64
glibc-2.17-196.el7.i686
$ 

I'm trying to follow Download Skype | Free calls | Chat app:

$ sudo rpm -ivh https://go.skype.com/skypeforlinux-64.rpm
Retrieving https://go.skype.com/skypeforlinux-64.rpm
error: Failed dependencies:
    libstdc++.so.6(GLIBCXX_3.4.20)(64bit) is needed by skypeforlinux-8.9.0.1-1.x86_64
$ 

am I doing something wrong? or is it on Microsoft's side?

| improve this question | | | | |
5

It seems that you are running Centos 7. When issuing the command strings /usr/lib/libstdc++.so.6 | grep GLIBCXX in Centos 7, it shows the following output:

GLIBCXX_3.4
_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
GLIBCXX_DEBUG_MESSAGE_LENGTH

This means that right now Centos doesn't support the version of glibc (, i.e., GLIBCXX_3.4.20) that is required by the latest version of Skype (v8.9).

If wish to install Skype in Centos at the moment, you can have a look at the nux repo which hosts a precompiled version of skype (probably an older version). Or you could always build the latest glibc from source and then try to install Skype.

| improve this answer | | | | |
  • I'm on RHEL 7.4 and I'm seeing this problem too – Joril Nov 6 '17 at 11:14
  • As said, nothing can be done for the time being if you are using stock glibc. Update has to come from upstream maintainers. – Śubham Nov 6 '17 at 11:17
2

You can extract the content of package, for example rpm:

$ rpm2cpio skypeforlinux-64.rpm | cpio -id

and then run it (from location that you have extracted it):

$ usr/share/skypeforlinux/skypeforlinux

Info about glibc 3.4.20:

It looks that the only file that wants it is cld.node (usr/share/skypeforlinux/resources/app.asar.unpacked/node_modules/@paulcbetts/cld/build/Release/cld.node)

| improve this answer | | | | |
1

Microsoft made an attempt at fixing this for CentOS/RHEL 7 in unstable build 8.11.76.3 available here. More info is available in this CentOS thread.

| improve this answer | | | | |
0

You can find libstc++.so.6.0.20, which contains GLIBCXX_3.4.20 and it's compiled for glibc-2.17. Then put it to /usr/lib64 and relink existing libstdc++.so.6 to it.

For example, the appropriate library can be found in this package - https://rpmfind.net/linux/RPM/sourceforge/r/ra/ramonelinux/Rel_0.99/releases/x86_64/packages/gcc-libstdc++-4.9.1-1.ram0.99.x86_64.html

P.S. The dependencies will be still failing. But at least Skype will run after installation.

| improve this answer | | | | |
0

... not the best way to go, however one can use --nodeps, like this:

$ sudo rpm -ivh https://go.skype.com/skypeforlinux-64.rpm --nodeps
Retrieving https://go.skype.com/skypeforlinux-64.rpm
Preparing...                          ################################# [100%]
Updating / installing...
   1:skypeforlinux-8.9.0.1-1          ################################# [100%]
Redirecting to /bin/systemctl start atd.service
$ echo $?
0
$ 

another way to go would be to downgrade to older version of skype:

next step is only applicable if you used --nodeps option, otherwise skip to next step:

$ sudo yum remove skypeforlinux
Loaded plugins: fastestmirror, langpacks, nvidia
Resolving Dependencies
--> Running transaction check
---> Package skypeforlinux.x86_64 0:8.9.0.1-1 will be erased
--> Finished Dependency Resolution

Dependencies Resolved

=========================================================================================================
 Package                     Arch                 Version                  Repository               Size
=========================================================================================================
Removing:
 skypeforlinux               x86_64               8.9.0.1-1                installed               206 M

Transaction Summary
=========================================================================================================
Remove  1 Package

Installed size: 206 M
Is this ok [y/N]: y
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Erasing    : skypeforlinux-8.9.0.1-1.x86_64                                                        1/1 
  Verifying  : skypeforlinux-8.9.0.1-1.x86_64                                                        1/1 

Removed:
  skypeforlinux.x86_64 0:8.9.0.1-1                                                                       

Complete!
$

go ahead and install older version of skypeforlinux:

$ sudo yum install skypeforlinux-5.5.0.1-1
Loaded plugins: fastestmirror, langpacks, nvidia
Loading mirror speeds from cached hostfile
 * base: linux.cc.lehigh.edu
 * elrepo: reflector.westga.edu
 * epel: mirror.nodesdirect.com
 * extras: mirror.cs.vt.edu
 * nux-dextop: mirror.li.nux.ro
 * updates: mirror.metrocast.net
Resolving Dependencies
--> Running transaction check
---> Package skypeforlinux.x86_64 0:5.5.0.1-1 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

=========================================================================================================
 Package                    Arch                Version                  Repository                 Size
=========================================================================================================
Installing:
 skypeforlinux              x86_64              5.5.0.1-1                skype-stable               69 M

Transaction Summary
=========================================================================================================
Install  1 Package

Total download size: 69 M
Installed size: 69 M
Is this ok [y/d/N]: y
Downloading packages:
skypeforlinux_5.5.0.1-1.x86_64.rpm                                                |  69 MB  00:00:35     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : skypeforlinux-5.5.0.1-1.x86_64                                                        1/1 
Redirecting to /bin/systemctl start atd.service
  Verifying  : skypeforlinux-5.5.0.1-1.x86_64                                                        1/1 

Installed:
  skypeforlinux.x86_64 0:5.5.0.1-1                                                                       

Complete!
$ 
| improve this answer | | | | |
  • 1
    --nodeps can be dangerous...Missing libs in this case may cause Skype malfunction. You can use yum provides libstdc* to see what package provides the missing lib, then install the package before installing Skype with rpm. – Eduardo Baitello Nov 1 '17 at 18:30
-1

Download https://repo.skype.com/rpm/stable/skypeforlinux_5.5.0.1-1.x86_64.rpm and install it by yum localinstall skypeforlinux_5.5.0.1-1.x86_64.rpm Works for me on CentOS 7.

| improve this answer | | | | |
  • This reply is too succinct to be of real use: it does not address the problem of the failed dependency. The fact that it works for your pc, where most likely the set of installed programs is altogether different, does not mean it will work on a subtly different installation. A really useful answer would entail explaining how to fully diagnose the case of the un-installable dependency. Please try to expand on this point, if you think you can be of assistance. – MariusMatutiae Nov 8 '17 at 17:03

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.