Rpm error: Failed Dependencies
1) Error
Installing fdo provider for raster
Error: Failed dependencies:
Libpng. So is needed by fdo-raster-3.7.0.806-1.i386
2) install libpng
# Install libpng by yum
$ Yum install libpng
# Check libpng is installed
$ Rpm-Qa | grep libpng
Libpng-1.2.10-7.1.el5_5.3
$ Rpm-Q libpng-1.2.10-7.1.el5_5.3
Libpng-1.2.10-7.1.el5_5.3
3) solution 1
Changed to below to ignore dependences:
Rpm-I -- force -- nodeps fdo-raster-3.7.0.806-1.i386.rpm
It shoshould work, because the dependence is existed:
# Check if libpng is existed
$ Locate LibPNG. So
/Usr/lib/LibPNG. So
/Usr/lib/LibPNG. so.3
/Usr/lib/LibPNG. so.3.10.0
# Check if fdo-raster is really depedent with libpng
$ Rpm-QP -- requires fdo-raster-3.7.0.806-1.i386.rpm
LibFDO-3.7.0.so
Librfpoverrides. So
Libc. so.6
Libc. so.6 (glibc_2.0)
Libc. so.6 (glibc_2.1)
Libc. so.6 (glibc_2.1.3)
Libc. so.6 (glibc_2.2)
Libc. so.6 (glibc_2.3)
Libc. so.6 (glibc_2.3.2)
Libgcc_s.so.1
Libgcc_s.so.1 (gcc_3.0)
Libgcc_s.so.1 (glibc_2.0)
Libm. so.6
Libm. so.6 (glibc_2.0)
Libpng. So
Librt. so.1
Librt. so.1 (glibc_2.1)
Libstdc ++. so.6
Libstdc ++. so.6 (cxxabi_1.3)
Libstdc ++. so.6 (glibcxx_3.4)
Rpmlib (compressedfilenames) <= 3.0.4-1
Rpmlib (payloadfileshaveprefix) <= 4.0-1
# Check if the file '. so' file from fdo-raster is really dependent with libpng
$ LDD./librfpprovider. So
Linux-gate.so.1 => (0x0040d000)
Libpng. So =>/usr/lib/LibPNG. So (0x005c9000)
LibFDO-3.7.0.so =>/usr/local/fdo-3.7.0/lib/libFDO-3.7.0.so (0x00f17000)
Librfpoverrides. So =>/usr/local/fdo-3.7.0/lib/librfpoverrides. So (0x00689000)
Librt. so.1 =>/lib/librt. so.1 (0x0046d000)
Libstdc ++. so.6 =>/usr/lib/libstdc ++. so.6 (0x00110000)
Libm. so.6 =>/lib/libm. so.6 (0x001fb000)
Libgcc_s.so.1 =>/lib/libgcc_s.so.1 (0x00491000)
Libc. so.6 =>/lib/libc. so.6 (0x00222000)
Libz. so.1 =>/usr/lib/libz. so.1 (0x00366000)
Libxalan-c.so.111>/usr/local/fdo-3.7.0/lib/libxalan-c.so.111 (0x0174b000)
Libxalanmsg. so.111 =>/usr/local/fdo-3.7.0/lib/libxalanmsg. so.111 (0x005a3000)
Libxerces-c-3.1.so/usr/local/fdo-3.7.0/lib/libxerces-c-3.1.so (0x012c1000)
Libpthread. so.0 =>/lib/libpthread. so.0 (0x00379000)
Libdl. so.2 =>/lib/libdl. so.2 (0x003ff000)
/Lib/ld-linux.so.2 (0x00583000)
Libnsl. so.1 =>/lib/libnsl. so.1 (0x00390000)
Libcurl. so.3 =>/usr/lib/libcurl. so.3 (0x003a7000)
Libgssapi_krb5.so.2 =>/usr/lib/libgssapi_krb5.so.2 (0x0040e000)
Libkrb5.so. 3 =>/usr/lib/libkrb5.so. 3 (0x0049d000)
Libk5crypto. so.3 =>/usr/lib/libk5crypto. so.3 (0x0043c000)
Libcom_err.so.2 =>/lib/libcom_err.so.2 (0x003e3000)
Libidn. so.11 =>/usr/lib/libidn. so.11 (0x007b5000)
Libssl. so.6 =>/lib/libssl. so.6 (0x00533000)
Libcrypto. so.6 =>/lib/libcrypto. so.6 (0x07b60000)
Libresolv. so.2 =>/lib/libresolv. so.2 (0x003e6000)
Libkrb5support. so.0 =>/usr/lib/libkrb5support. so.0 (0x0060c000)
Libkeyutils. so.1 =>/lib/libkeyutils. so.1 (0x003f9000)
Libselinux. so.1 =>/lib/libselinux. so.1 (0x00476000)
Libsepol. so.1 =>/lib/libsepol. so.1 (0x00615000)
4) solution 2
# Change spec file to ignore depedences
Source91: filter-requires.sh
% DEFINE _ use_internal_dependency_generator 0
% DEFINE _ find_requires % {source91}
# Filter-requires.sh
#! /Bin/sh
If [-x/usr/lib/RPM/RedHat/find-requires]; then
Findreq =/usr/lib/RPM/RedHat/find-requires
Else
Findreq =/usr/lib/RPM/find-requires
Fi
$ Findreq $ * | sed-e '/LibPNG. So/d'
5) reference:
Http://www.rpm.org/wiki/Docs#UserDocumentation
Http://docs.fedoraproject.org/en-US/Fedora_Draft_Documentation/0.1/html/RPM_Guide/index.html