LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1207|回复: 12

linux下如何能使某个程序单独用旧版本的glibc库?

[复制链接]
发表于 2006-5-31 18:27:15 | 显示全部楼层 |阅读模式
有一些软件要求libc低版本的库比如说redhat7.2上的
还有一些其它的旧版本的库
我常用的系统是Debian sid
测试过了这些软件在RedHat非FC系列的发行版上基本上都能跑
但是不想跑vmware或者其它的虚拟机
一来机器不快
二来占太多硬盘空间

1.
所以想能不能在Debian sid系统做一些系统设置
或者环境变量设置能使这些软件能够正常运行呢?

我曾经试过设置
export  LD_LIBRARY_PATH=/path/to/oldlib

2.
哪位能讲讲这个环境变量是做什么用的?

这样能正常运行一些软件
但有一些还是不能正常运行

3.
我对系统动态链接库的加载不是很明白,哪位指点一下或者给点参考资料?

4.
还有一个chroot,有人曾经说过用mailjail来创建一个运行所需的最小系统环境
但是这些软件要在X下跑的,chroot过去后但是发行版不同好像不能跑起来X吧?

5.能不能有一种方法设置系统的某些参数或者环境变量只让这些程序来使用旧版本的库呢?

谢谢
 楼主| 发表于 2006-5-31 18:29:16 | 显示全部楼层

linux下如何能使某个程序单独用旧版本的glibc库?

有一些软件要求libc低版本的库比如说redhat7.2上的
还有一些其它的旧版本的库
我常用的系统是Debian sid
测试过了这些软件在RedHat非FC系列的发行版上基本上都能跑
但是不想跑vmware或者其它的虚拟机
一来机器不快
二来占太多硬盘空间

1.
所以想能不能在Debian sid系统做一些系统设置
或者环境变量设置能使这些软件能够正常运行呢?

我曾经试过设置
export  LD_LIBRARY_PATH=/path/to/oldlib

2.
哪位能讲讲这个环境变量是做什么用的?

这样能正常运行一些软件
但有一些还是不能正常运行

3.
我对系统动态链接库的加载不是很明白,哪位指点一下或者给点参考资料?

4.
还有一个chroot,有人曾经说过用mailjail来创建一个运行所需的最小系统环境
但是这些软件要在X下跑的,chroot过去后但是发行版不同好像不能跑起来X吧?

5.能不能有一种方法设置系统的某些参数或者环境变量只让这些程序来使用旧版本的库呢?

谢谢
回复 支持 反对

使用道具 举报

发表于 2006-5-31 18:47:06 | 显示全部楼层
印像中 Glibc-Howto 里曾经提及过方法
回复 支持 反对

使用道具 举报

发表于 2006-5-31 22:50:26 | 显示全部楼层
试试LD_PRELOAD
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-5-31 22:50:47 | 显示全部楼层
能再具体一点吗?
你是指的是LFS里的那一节吗?
我看过一点
但是不敢那么做
因为如果有两个libc6.so.0系统会怎么样呢?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-5-31 23:15:03 | 显示全部楼层
能具体一点吗?
说说原理
回复 支持 反对

使用道具 举报

发表于 2006-5-31 23:19:10 | 显示全部楼层
幻想老大曾经试过,详情见:

http://www.linuxsir.cn/bbs/showthread.php?t=228819
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-5-31 23:57:12 | 显示全部楼层
查到这些相关资料:
http://www.linuxsir.cn/bbs/showthread.php?t=48381&page=1
LD_PRELOAD
LD_LIBRARY_PATH
/etc/ld.so.conf

不知道这些能不能起作用
关键是如果有两个相同的库文件
对不同的程序怎么分类使用不同的库
因为debian中的库不可能降级,也不会,因为系统中原有的软件还得用
而旧的库只想给特定程序用
回复 支持 反对

使用道具 举报

发表于 2006-6-1 00:15:08 | 显示全部楼层
[color="Red"]有一些软件要求libc低版本的库比如说redhat7.2上的
还有一些其它的旧版本的库
我常用的系统是Debian sid
测试过了这些软件在RedHat非FC系列的发行版上基本上都能跑
这些软件能不能重新编译连结到新版 glibc 上?
回复 支持 反对

使用道具 举报

发表于 2006-6-1 00:45:27 | 显示全部楼层
动态连接时,先连接你指定的so,这样就不需要再去找和这个so同名的so了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表