• glibc降级尝试失败-兼使用另一个版本的glibc


    https://cnodejs.org/topic/56dc21f1502596633dc2c3dc 这个介绍的是升级的情况。
    降级,网上说很难。因为用yum是无法降级安装的。我仿造升级的方式,make install,发现链接还是没有改变。
    重启,

    进入/lib64,强行将libc-so-2.12.so 指向 libc.so,(系统中正在运行的版本是libc-so-2.18)。重启后,系统出现内核错误的提示,无法重启。

    使用另一个版本的glibc:

    有的程序编译需要另外的glibc环境,这样做。(参考:http://pkuwwt.github.io/linux/2014-04-25-use-another-glibc-installation/)

    gcc main.c -o main -Wl,--rpath=/path/to/new/glibc/lib -Wl,--dynamic-linker=/path/to/new/glibc/ld-linux.so.2

    其中ld-linux.so.2在64位系统下可能为ld-linux-x86-64.so.2,它的路径会硬编码到程序中(因此显式指定时换成别的名字也没什么问题)。正是这个原因,导致很多已有程序不能使用新glibc的库。

    另外,查看链接问题的两个常用工具是:

    • ldd: 查看可执行文件或动态库依赖的其它的库
    • strings: 查看库中的字符串,比如strings /lib64/libc.so.2 | grep GLIBC可以查看GLIBC支持的版本。

     

  • 相关阅读:
    凤凰架构-读书笔记
    《团队协作的五大障碍》笔记
    MongoDB基本操作命令一
    NBI可视化集成clickhouse,实现百亿级数据分析能力
    AI文本与图像数据集荟萃
    gitLab内网部署
    git管理子模块
    git基础使用
    linux内核数据结构之链表-再实现
    win10下安装linux子系统
  • 原文地址:https://www.cnblogs.com/tangxiaosheng/p/7511104.html
Copyright © 2020-2023  润新知