Synergy-core: Unsatisfiable RPM dependency in SUSE distros

Created on 22 Jul 2016  路  6Comments  路  Source: symless/synergy-core

Hi guys... I run into this on each install; normally I just work around it, but now that I'm doing beta installs it's proportionally more annoying ;-)

The RPM has a requirement for a version of libcrypto that we're not shipping/delivering; I think this is mostly a naming issue as symlinking from the provided version to what synergy expects works fine.

SUSE's libopenssl provides libcrypto.so.1.0.0()(64bit); the synergy package asks for libcrypto.so.10()(64bit)

Fedora ships libcrypto.so.1.0.0()(64bit) as well, so maybe you guys can just update the requires in the RPM specfile?

Here's the error I see on installation:

$ sudo zypper in ./synergy-v1.8.2-rc1-12e0120-Linux-x86_64.rpm
Loading repository data...
Reading installed packages...
Forcing installation of 'synergy-1.8.2-1.x86_64' from repository 'Plain RPM files cache'.
Resolving package dependencies...

Problem: nothing provides libcrypto.so.10()(64bit) needed by synergy-1.8.2-1.x86_64
 Solution 1: do not install synergy-1.8.2-1.x86_64
 Solution 2: break synergy-1.8.2-1.x86_64 by ignoring some of its dependencies

Choose from above solutions by number or cancel [1/2/c] (c):

That is actually provided as part of libopenssl:

$ zypper info --provides libopenssl1_0_0
Loading repository data...
Reading installed packages...


Information for package libopenssl1_0_0:
----------------------------------------
Repository: openSUSE-Tumbleweed-Oss
Name: libopenssl1_0_0
Version: 1.0.2h-1.3
Arch: x86_64
Vendor: openSUSE
Installed: Yes
Status: up-to-date
Installed Size: 3.1 MiB
Summary: Secure Sockets and Transport Layer Security
Description: 
  The OpenSSL Project is a collaborative effort to develop a robust,
  commercial-grade, full-featured, and open source toolkit implementing
  the Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS
  v1) protocols with full-strength cryptography. The project is managed
  by a worldwide community of volunteers that use the Internet to
  communicate, plan, and develop the OpenSSL toolkit and its related
  documentation.
  Derivation and License
  OpenSSL is based on the excellent SSLeay library developed by Eric A.
  Young and Tim J. Hudson. The OpenSSL toolkit is licensed under an
  Apache-style license, which basically means that you are free to get it
  and to use it for commercial and noncommercial purposes.
Provides:
  libcrypto.so.1.0.0()(64bit)
  libssl.so.1.0.0()(64bit)
  libgost.so()(64bit)
  libpadlock.so()(64bit)
  libopenssl1_0_0 == 1.0.2h-1.3
  libopenssl1_0_0(x86-64) == 1.0.2h-1.3

And just for reference, zypper's interpretation of the package requirements.

$ zypper info --requires synergy
Loading repository data...
Reading installed packages...


Information for package synergy:
--------------------------------
Repository: @System
Name: synergy
Version: 1.8.2-1
Arch: x86_64
Vendor: The Synergy Project
Installed: Yes
Status: up-to-date
Installed Size: 13.9 MiB
Summary: Keyboard and mouse sharing utility
Description: 
  Synergy is free and open source software for sharing one mouse and keyboard
  between multiple computers. Works on Windows, Mac OS X, Linux.
Requires:
  libc.so.6()(64bit)
  libc.so.6(GLIBC_2.2.5)(64bit)
  libc.so.6(GLIBC_2.4)(64bit)
  libpthread.so.0()(64bit)
  libpthread.so.0(GLIBC_2.2.5)(64bit)
  libm.so.6()(64bit)
  libdl.so.2()(64bit)
  libstdc++.so.6()(64bit)
  libstdc++.so.6(GLIBCXX_3.4)(64bit)
  libstdc++.so.6(CXXABI_1.3)(64bit)
  libgcc_s.so.1()(64bit)
  libdl.so.2(GLIBC_2.2.5)(64bit)
  libgcc_s.so.1(GCC_3.0)(64bit)
  libX11.so.6()(64bit)
  libpthread.so.0(GLIBC_2.3.2)(64bit)
  libstdc++.so.6(GLIBCXX_3.4.9)(64bit)
  libstdc++.so.6(GLIBCXX_3.4.11)(64bit)
  libXext.so.6()(64bit)
  libcurl.so.4()(64bit)
  libXi.so.6()(64bit)
  libICE.so.6()(64bit)
  libstdc++.so.6(CXXABI_1.3.1)(64bit)
  libXrandr.so.2()(64bit)
  libXinerama.so.1()(64bit)
  libSM.so.6()(64bit)
  libXtst.so.6()(64bit)
  rtld(GNU_HASH)
  libQtCore.so.4()(64bit)
  libQtGui.so.4()(64bit)
  libQtNetwork.so.4()(64bit)
  libdns_sd.so.1()(64bit)
  libcrypto.so.10()(64bit)
  libcrypto.so.10(OPENSSL_1.0.1)(64bit)
  libcrypto.so.10(libcrypto.so.10)(64bit)
  libssl.so.10()(64bit)
  libssl.so.10(libssl.so.10)(64bit)
  rpmlib(PayloadFilesHavePrefix) <= 4.0-1
  rpmlib(CompressedFileNames) <= 3.0.4-1
  rpmlib(PayloadIsXz) <= 5.2-1
  rpmlib(FileDigests) <= 4.6.0-1
bug

Most helpful comment

I can also confirm that bug with 1.8.2-rc1-f4510c7
The workaround is not correct or for OpenSuSE Tumbleweed is the folder for the ssl-library an another.
At my system, both symlinks must be in the lib64 folder:

ln -s /lib64/libcrypto.so.1.0.0 /usr/lib64/libcrypto.so.10

ln -s /lib64/libssl.so.1.0.0 /usr/lib64/libssl.so.10

With that workaround can be the libns plugin installed and used,

But the installation isn't fixed with that workaround.
I must override the install-error, that no rpm is found with libcrypto.so.10

All 6 comments

I confirm the bug (was already present in 8.1.1)
To workaround (a works perfectly) as root :

ln -s /lib64/libcrypto.so.1.0.0 /usr/lib64/libcrypto.so.10

ln -s /lib64/libssl.so.1.0.0 /usr/lib/libssl.so.10

I can also confirm that bug with 1.8.2-rc1-f4510c7
The workaround is not correct or for OpenSuSE Tumbleweed is the folder for the ssl-library an another.
At my system, both symlinks must be in the lib64 folder:

ln -s /lib64/libcrypto.so.1.0.0 /usr/lib64/libcrypto.so.10

ln -s /lib64/libssl.so.1.0.0 /usr/lib64/libssl.so.10

With that workaround can be the libns plugin installed and used,

But the installation isn't fixed with that workaround.
I must override the install-error, that no rpm is found with libcrypto.so.10

Seeing this with synergy-2.0.0-818.beta4.042356d4.el7.centos.x86_64.rpm as well. Would be great to have a fix

I need a fix too

Fix needed too

I'm on Fedora 30 and ran into the same problem.

sudo rpm -i synergy-1.10.2-109.stable.8c010140.centos.el7.x86_64.rpm

Error

error: Failed dependencies:
libcrypto.so.10()(64bit) is needed by synergy-1.10.2-109.stable.8c010140.el7.x86_64
libcrypto.so.10(OPENSSL_1.0.2)(64bit) is needed by synergy-1.10.2-109.stable.8c010140.el7.x86_64
libcrypto.so.10(libcrypto.so.10)(64bit) is needed by synergy-1.10.2-109.stable.8c010140.el7.x86_64
libssl.so.10()(64bit) is needed by synergy-1.10.2-109.stable.8c010140.el7.x86_64
libssl.so.10(libssl.so.10)(64bit) is needed by synergy-1.10.2-109.stable.8c010140.el7.x86_64

I tried the symlink method and it didn't work for me. I'm not sure if any other steps were required.

However, I installed using package manager and it was successful:

sudo dnf install synergy-1.10.2-109.stable.8c010140.centos.el7.x86_64.rpm

I noticed the following in the summary:

Installing:
 synergy                              x86_64                     1.10.2-109.stable.8c010140.el7                        @commandline                     604 k
Installing dependencies:
 compat-openssl10                     x86_64                     1:1.0.2o-5.fc30                                       fedora                           1.1 M

I can't see the package compat-openssl10 in SuSe anywhere but I wonder if it might help in anyway.

btw. The rpm installed, but I'm running into problems. Can't see cursor etc. Which I'm still debugging.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

laur89 picture laur89  路  5Comments

straris picture straris  路  5Comments

sangwoo-joh picture sangwoo-joh  路  4Comments

Celant picture Celant  路  4Comments

martindale picture martindale  路  5Comments