V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
xiaoheijw
V2EX  ›  Linux

locale 指令报错: /lib64/libc.so.6 version GLIBC_2.15 not found

  •  
  •   xiaoheijw · 2017-08-25 22:24:46 +08:00 · 2728 次点击
    这是一个创建于 2407 天前的主题,其中的信息可能已经有所发展或是发生改变。
    服务器是 centos 6.5 升级 glibc 至 2.15 ,libc.so.6 软连接指向 glibc2.15 导致各种程序报错,于是编译了 glibc2.14 没有放在 /lib64 目录,
    手动删除软连接,重新指向 glibc2.14 ,其他程序运行正常,就这个字符集,总是报错,有大佬知道单独编译 locale 的方法,尝试过 ./configure --prefix=/usr --libexecdir=/usr/lib/findutils --localstatedir=/usr/bin/locate,貌似无效。
    看到有答案可以在线安装 local,不过是 Ubuntu 系统,yum install locales,提示找不到包,可能要添加源,但谷歌一番,也没找到这样的源,有大佬知道怎么重新安装或是编译 locale
    8 条回复    2017-09-13 14:51:51 +08:00
    gstqc
        1
    gstqc  
       2017-08-25 23:46:48 +08:00 via iPhone
    楼主你这是犯了一个错误然后用更多错误去填坑啊
    这系统环境和基础库估计已经被搞得乱七八糟

    ldd $(which locale) 看看
    xiaoheijw
        2
    xiaoheijw  
    OP
       2017-08-26 00:21:57 +08:00
    @gstqc ldd 依赖库就是指向 libc.so.6 >>/lib64/libc.so.6
    msg7086
        3
    msg7086  
       2017-08-26 01:13:43 +08:00
    首先 CentOS 6 的 GLibc 就只有 2.12 版本。
    不知道你 2.15 是哪来的。自己编译的?
    zonyitoo
        4
    zonyitoo  
       2017-08-26 01:34:09 +08:00
    先 ldd 一下,看看 locale 到底链接到了哪个 libc,然后再针对性解决。楼主你这样摸黑在系统里装了那么多个不同版本的 libc,一团浆糊啊
    fangdingjun
        5
    fangdingjun  
       2017-08-26 09:31:07 +08:00
    多个 libc, 使用环境变量 LD_LIBRARY_PATH 切换,不要动系统黙认的
    xiaoheijw
        6
    xiaoheijw  
    OP
       2017-08-27 00:10:58 +08:00
    @msg7086 是自己编译的
    msg7086
        7
    msg7086  
       2017-08-27 14:39:50 +08:00
    @xiaoheijw 核心系统包不建议自己编译,要出事的。
    TracyMagic
        8
    TracyMagic  
       2017-09-13 14:51:51 +08:00
    我之前也升级了 GLIBC,然后 kernel panic !!
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1058 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 22:40 · PVG 06:40 · LAX 15:40 · JFK 18:40
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.