Problem to install RPM on Ubuntu

Asked

Viewed 124 times

0

I’m trying to install some packages RPM in my Ubuntu, but I am getting dependency failure messages. The strange thing is that all dependencies are already installed in my ONLY.

I created a directory deps 4 rpm: eventlet-0.17.1-1.noarch.rpm, greenlet-0.4.5-1.x86_64.rpm, pycrypto-2.6.1-2.x86_64.rpm, pyparsing-2.0.3-1.noarch.rpm.

I executed the following command:

sudo rpm -ivh *.rpm

I get the following error message:

python(Abi) = 2.7 is needed by eventlet-0.17.1-1.noarch libc.so. 6()(64bit) is needed by greenlet-0.4.5-1.x86_64 libc.so. 6(GLIBC_2.14)(64bit) is needed by greenlet-0.4.5-1.x86_64 libc.so. 6(GLIBC_2.2.5)(64bit) is needed by greenlet-0.4.5-1.x86_64 libc.so. 6(GLIBC_2.4)(64bit) is needed by greenlet-0.4.5-1.x86_64 libpthread.so. 0()(64bit) is needed by greenlet-0.4.5-1.x86_64 libpython2.7.so.1.0()(64bit) is needed by greenlet-0.4.5-1.x86_64 python(Abi) = 2.7 is needed by greenlet-0.4.5-1.x86_64 rtld(GNU_HASH) is needed by greenlet-0.4.5-1.x86_64 libc.so. 6()(64bit) is needed by pycrypto-2.6.1-2.x86_64 libc.so. 6(GLIBC_2.14)(64bit) is needed by pycrypto-2.6.1-2.x86_64 libc.so. 6(GLIBC_2.2.5)(64bit) is needed by pycrypto-2.6.1-2.x86_64 libc.so. 6(GLIBC_2.4)(64bit) is needed by pycrypto-2.6.1-2.x86_64 libpthread.so. 0()(64bit) is needed by pycrypto-2.6.1-2.x86_64 libpython2.7.so.1.0()(64bit) is needed by pycrypto-2.6.1-2.x86_64 python(Abi) = 2.7 is needed by pycrypto-2.6.1-2.x86_64 rtld(GNU_HASH) is needed by pycrypto-2.6.1-2.x86_64 python(Abi) = 2.7 is needed by pyparsing-2.0.3-1. noarch

The first dependency that is required is the Python 2.7, but when I execute python --version, get Python 2.7.6.

Any idea what the problem is?

1 answer

2


And why you want to install RPM packages on your Ubuntu?

Don’t do this - install native Ubuntu packages from an appropriate repository - if you need a Python library that doesn’t happen to be in the Ubuntu repositories, the best thing to do is to create a virtualenv Python, and install the library there with pip install ...

Linux packages like ". deb" and ". rpm" are not just "the program and the necessary files" - they are "the program and the necessary files"carefully arranged with metadata for the program dependencies to be found, for the files to be in folders consistent with other folders on your system, and finally, so that the system can manage all installed files as part of each package so that it can correctly manage package versions.

A "rpm" is a file made for a different Linux distribution than Ubuntu (and even a . deb for other distributions could have the same problems) - and regardless of whether you have tools that can "open and install" rpm, there will be at least problems like the one above - in your case, one of the systems "sees" Python 2.7.6 and another "sees" Python 2.7 (in terms of compatibility and libraries the two are the same).

Now, all these packages you mention are well-known and widely used projects in the Python community - and surely you just need to type apt-get install python-eventlet python-greenlet python-crypto python-pyparsing for your system to search for these packages and the dependencies automatically on the internet. And, when any of them are updated, automatic updates of your system will still account for it as well.

Now, remember the virtualenv - while you’re just experimenting, ok using operating system packages - if you’re starting a software project that uses these libraries, using virtualenv is highly recommended - because it allows you to fix the versions of the Python libraries that work for you, independent of the versions used by your system, and this is replicable on other machines with Linux, independent of the versions also.

Browser other questions tagged

You are not signed in. Login or sign up in order to post.