I am trying to install openssl-devel on a 64bit linux instance on ec2. However, when I try to install it sudo yum install openssl-devel I get this error:

Error: Package: openssl-devel-1.0.0g-1.26.amzn1.x86_64 (amzn-updates)
       Requires: openssl = 1.0.0g-1.26.amzn1
       Installed: openssl-1.0.0i-1.41.amzn1.i686 (@amzn-updates/latest)
           openssl = 1.0.0i-1.41.amzn1
       Available: openssl-1.0.0a-10.13.amzn1.i686 (amzn-main)
           openssl = 1.0.0a-10.13.amzn1
       Available: openssl-1.0.0e-2.16.amzn1.i686 (amzn-updates)
           openssl = 1.0.0e-2.16.amzn1
       Available: openssl-1.0.0g-1.26.amzn1.i686 (amzn-updates)
           openssl = 1.0.0g-1.26.amzn1

But, when I try to install openssl-1.0.0g-1.26.amzn1 I get this response:

Setting up Install Process
Package matching openssl-1.0.0g-1.26.amzn1.x86_64 already installed. Checking for update.
Nothing to do

The version of openSSL installed (1.0.0i-1.41.amzn1) will not let me change to the version I need that will allow me to install openssl-devel. Any ideas on how to change the installed version or install a compatible openssl-devel?

  • Did you try to run first yum upgrade to make sure that everything is in place ?
    – golja
    Aug 16 '12 at 4:20
  • 1
    arch? yum repolist? rpm -qa --qf "%{n}-%{v}-%{r}.%{arch}\n" | grep -i openssl?
    – quanta
    Aug 16 '12 at 4:24

You have both x86_64 and i686 versions of openssl installed, but they have different versions. Yum gets very confused when this happens.

To fix this, you need to get both versions in sync, or remove (and maybe reinstall, if needed) one of them.

Option 1: Sync

Updating should get your system into a reasonably sane state:

yum update

Install the package you really wanted:

yum install openssl-devel

If this fails, move on to...

Option 2: Remove and reinstall

Remove the offending package:

rpm --nodeps -e openssl.i686

Install the package you really wanted:

yum install openssl-devel

Install the previously removed package:

yum install openssl
  • Doing a 'yum clean all' before this is a good way to make sure you don't have any stale repo data also. Aug 16 '12 at 16:34

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.