fedora解决旧版本库依赖问题

本帖最后由 oohyoou 于 2011-5-29 13:41 编辑

在新系统中往往会使用最新到软件包,而某些应用软件的依赖往往需要旧版本库的支持,这就导致部分软件因为依赖问题而无法安装。
在fedora中典型的为libnotify.so.1的依赖,这个库只有libnotify-0.5版本提供,而系统模默认安装0.7版本,不用新版本又会导致现有系统问题。同时安装0.5,07在一个系统中,虽然可行,但也存在一定的冲突。
下面是从http://www.yolinux.com/TUTORIALS/LinuxTutorialSysAdmin.html#RPM引用的一段解决方案:
[
Potential Pitfall]: You try and install an RPM but you can not get the appropriate version of the run time libraries because they are too old and not present on your system or you get a runtime error:
/usr/bin/ld: cannot find /lib/libxx.so.1.0.4
Here is how to install some old libraries on your newer system without corrupting your current installation.

First force the installation of the RPM without the dependency requirement: rpm --nodeps -ivh xxxx-...rpm.;第一步以 nodeps方式把你要用的软件先装上。
Next download an old RPM of the appropriate library, i.e. glibc-x.x.x.rpm;接下来,下载提供旧库的包。
Extract the libraries from the RPM: rpm2cpio glibc-x.x.x.rpm | cpio -idv ;用命令rpm2cpio glibc-x.x.x.rpm | cpio -idv 展开下载的包。
This will install to your current directory: ./usr/lib/.. and ./lib/...;库函数将要安装到你的/usr/lib 和/lib
Manually copy the library file to the library directory or path accessible by LD_LIBRARY_PATH or ldconfig: i.e.;通过cp我们手动安装
cp ./lib/libxx.so.1.0.4 /lib/libxx.so.1.0.4 这是范例。

作者: oohyoou   发布时间: 2011-05-28

很不错

作者: yzs   发布时间: 2011-05-29

不错,赞楼主。

不过,帖子中的链接不对啊~~

作者: alick   发布时间: 2011-05-29

alick
多谢提醒。。已经改过来

作者: oohyoou   发布时间: 2011-05-29