Issue
I'm getting this error, searched the net but couldn't find anything.
Pls help, newbie
error: Failed dependencies: rpm -ivh perl-5.8.8-43.el5_11.i386.rpm
[root@workstation ~]# rpm -ivh perl-5.8.8-43.el5_11.i386.rpm
error: Failed dependencies:
libc.so.6 is needed by perl-5.8.8-43.el5_11.i386
libc.so.6(GLIBC_2.0) is needed by perl-5.8.8-43.el5_11.i386
libc.so.6(GLIBC_2.1) is needed by perl-5.8.8-43.el5_11.i386
libc.so.6(GLIBC_2.1.2) is needed by perl-5.8.8-43.el5_11.i386
libc.so.6(GLIBC_2.1.3) is needed by perl-5.8.8-43.el5_11.i386
libc.so.6(GLIBC_2.2) is needed by perl-5.8.8-43.el5_11.i386
libc.so.6(GLIBC_2.2.4) is needed by perl-5.8.8-43.el5_11.i386
libc.so.6(GLIBC_2.3) is needed by perl-5.8.8-43.el5_11.i386
libc.so.6(GLIBC_2.3.2) is needed by perl-5.8.8-43.el5_11.i386
libc.so.6(GLIBC_2.3.4) is needed by perl-5.8.8-43.el5_11.i386
libc.so.6(GLIBC_2.4) is needed by perl-5.8.8-43.el5_11.i386
libcrypt.so.1 is needed by perl-5.8.8-43.el5_11.i386
libcrypt.so.1(GLIBC_2.0) is needed by perl-5.8.8-43.el5_11.i386
libdb-4.3.so is needed by perl-5.8.8-43.el5_11.i386
libdl.so.2 is needed by perl-5.8.8-43.el5_11.i386
libdl.so.2(GLIBC_2.0) is needed by perl-5.8.8-43.el5_11.i386
libdl.so.2(GLIBC_2.1) is needed by perl-5.8.8-43.el5_11.i386
libgdbm.so.2 is needed by perl-5.8.8-43.el5_11.i386
libm.so.6 is needed by perl-5.8.8-43.el5_11.i386
libm.so.6(GLIBC_2.0) is needed by perl-5.8.8-43.el5_11.i386
libnsl.so.1 is needed by perl-5.8.8-43.el5_11.i386
libpthread.so.0 is needed by perl-5.8.8-43.el5_11.i386
libpthread.so.0(GLIBC_2.0) is needed by perl-5.8.8-43.el5_11.i386
libpthread.so.0(GLIBC_2.1) is needed by perl-5.8.8-43.el5_11.i386
libpthread.so.0(GLIBC_2.2) is needed by perl-5.8.8-43.el5_11.i386
libpthread.so.0(GLIBC_2.3.2) is needed by perl-5.8.8-43.el5_11.i386
libresolv.so.2 is needed by perl-5.8.8-43.el5_11.i386
librt.so.1 is needed by perl-5.8.8-43.el5_11.i386
librt.so.1(GLIBC_2.2) is needed by perl-5.8.8-43.el5_11.i386
libutil.so.1 is needed by perl-5.8.8-43.el5_11.i386
Solution
You're not using yum
, you're using rpm
.
Running rpm
will just install the packages listed on its command line (for Debian users, it's like dpkg -i
). If you ran yum
, then it would install any required packages as well (like apt-get install
). So you probably want:
yum localinstall perl-5.8.8-43.el5_11.i386.rpm
However, there's a huge caveat here. Which Linux distribution and which version are you using? You're trying to install an RPM that was built for Red Hat Enterprise Linux 5. There are two options here:
- You're installing it on RHEL5. This seems unlikely, as it will already be installed on those systems - and if, for some reason, it wasn't, you could just install it with
yum install perl
rather than downloading and installing a particular RPM. - You're installing it on some other version of a Red Hat-based Linux. This seems to be a pretty bad idea to me. The Perl RPM is a pretty fundamental part of a Linux distribution and replacing it with a version build for a different version is likely to be disastrous. If you're lucky, it just won't work as the correct versions of various underlying libraries won't be available. If you're unlucky, it will install and you will have completely trashed large parts of your installation.
You say you need this version of Perl in order to run some software you want to use. But are you sure it needs to be specifically this version of Perl? That would be unusual. Usually, the requirement is for a minimum version of Perl. And if you really do need Perl 5.8.8, then I'd question the wisdom of using software that relies on such an old version of Perl.
If, after all that, you still want to go ahead with this, then please don't use an RPM to overwrite your system Perl. The only sane approach is to build a separate Perl installation (perhaps in /opt
) and use that version. Another alternative would be to use something like perlbrew which makes it easy to install multiple versions of Perl on the same system.
Answered By - Dave Cross