I have an RPM that I am trying to install in my VM. My RPM is named myPackage.rpm and when I try to install it (yum install myPackage.rpm
), I am getting the following errors:
Error: Package: myPackage.x86_64 (/myPackage)
Requires: libicudata.so.32()(64bit)
Error: Package: myPackage.x86_64 (/myPackage)
Requires: libicuuc.so.32()(64bit)
Error: Package: myPackage.x86_64 (/myPackage)
Requires: libicui18n.so.32()(64bit)
I did rpm2cpio myPackage.rpm|cpio -idvm
to pull all the files from my rpm (in /root/rpms).
I did a find for libicudata.so*, and it shows the following:
/root/rpms/usr/lib64/libicudata.so.32.0
/root/rpms/usr/lib64/libicudata.so.32
/root/rpms/usr/lib64/libicudata.so
/root/rpms/usr/lib/libicudata.so.32.0
/root/rpms/usr/lib/libicudata.so.32
/root/rpms/usr/lib/libicudata.so
/usr/lib64/libicudata.so.32.0
/usr/lib64/libicudata.so.32
/usr/lib64/libicudata.so.50.1.2
/usr/lib64/libicudata.so.50
/usr/lib/libicudata.so.32.0
/usr/lib/libicudata.so.32
/usr/lib/libicudata.so.50.1.2
/usr/lib/libicudata.so.50
The files listed at /root/rpms/usr/
are files from my rpm, the others are installed in the VM.
I am not sure what I am doing wrong and why. Am I packaging my RPM incorrectly?
I found my error. All the library files for ICU were messed up before I created my RPM. I ran ldconfig
and it gave me error messages similar to this:
ldconfig: /lib/libicudata.so.32 is not a symbolic link
Where I was building my RPMs, what was supposed to be the symbolic links were actually files that were identical to the lib they were supposed to be pointing to. So, I deleted what should have been the symlinks, and recreated them. This eliminated the error.