I was trying to run redis server (on a CentOS server) with specific module:
redis-server --loadmodule ./redisql_v0.9.1_x86_64.so
and getting error:
Module ./redisql_v0.9.1_x86_64.so failed to load: /lib64/libc.so.6: version `GLIBC_2.18' not found (required by ./redisql_v0.9.1_x86_64.so)
this is the linux version:
uname
Linux
cat /etc/*release
CentOS Linux release 7.6.1810 (Core)
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"
CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"
CentOS Linux release 7.6.1810 (Core)
CentOS Linux release 7.6.1810 (Core)
Also this is what is showing for /lib64/libc.so.6
:
/lib64/libc.so.6
GNU C Library (GNU libc) stable release version 2.17, by Roland McGrath et al.
Copyright (C) 2012 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
Compiled by GNU CC version 4.8.5 20150623 (Red Hat 4.8.5-36).
Compiled on a Linux 3.10.0 system on 2019-01-29.
Available extensions:
The C stubs add-on version 2.1.2.
crypt add-on version 2.1 by Michael Glad and others
GNU Libidn by Simon Josefsson
Native POSIX Threads Library by Ulrich Drepper et al
BIND-8.2.3-T5B
RT using linux kernel aio
libc ABIs: UNIQUE IFUNC
For bug reporting instructions, please see:
<http://www.gnu.org/software/libc/bugs.html>.
Also:
rpm -qa | grep glibc
glibc-common-2.17-260.el7_6.3.x86_64
glibc-devel-2.17-260.el7_6.3.x86_64
glibc-2.17-260.el7_6.3.x86_64
glibc-headers-2.17-260.el7_6.3.x86_64
Tried as well:
yum install glibc* -y
Loaded plugins: fastestmirror, ovl
Loading mirror speeds from cached hostfile
* base: repos-va.psychz.net
* extras: repos-va.psychz.net
* updates: repos-va.psychz.net
Package glibc-devel-2.17-260.el7_6.3.x86_64 already installed and latest version
Package glibc-utils-2.17-260.el7_6.3.x86_64 already installed and latest version
Package glibc-2.17-260.el7_6.3.x86_64 already installed and latest version
Package glibc-headers-2.17-260.el7_6.3.x86_64 already installed and latest version
Package glibc-static-2.17-260.el7_6.3.x86_64 already installed and latest version
Package glibc-common-2.17-260.el7_6.3.x86_64 already installed and latest version
Nothing to do
What is the process of installing/setting GLIBC_2.18 on Centos/Redhat servers?
Thanks..
This issue 7 GLIBC_2.18 not found suggests that there should be a way to solve this problem, but the thread seems to be abandoned for a year. As of today Deno requires GLIBC_2.18, but unfortunately CentOS 7 is running 2.17, an old version of the gclib which is not enough: If you need to run Deno on CentOS you'll need to use CentOS 8.
/bin/ksh requires libm.so.6, which has been successfully located for loading at /lib64/libm.so.6 /lib64/libm.so.6 requires a version of glibc (i.e. libc.so) with a tag GLIBC_2.23 The problem with this is that in RHEL 7.x, the libc RPM package is glibc-2.17-.el7.x86_64.rpm, and it includes both /lib64/libc.so.6 and /lib64/libm.so.6.
I generally regard glibc updated for example to be a higher impact than installing a new kernel. Now what Edwin says above may indeed work, yet just be aware it will ruin support for that system you install a non-Red-Hat glibc on.
If the changed files are configuration files, that is OK; but if a non-configuration file belonging to the glibc RPM has been changed outside the control of the RPM package manager, that's an error. To fix it, you can run yum reinstall glibc - but you might want to find out why the replacement was done first!
You can upgrade to the Red Hat Enterprise Linux 8, which comes with glibc 2.28 and thus provides the GLIBC_2.18
symbol version (and much more).
If you do not want to upgrade, you need a Redis build for Red Hat Enterprise Linux 7. Red Hat provides a Software Collection with Redis 3.2 (available in the scl channels). There is also a CentOS build of Redis 3.2, again as a software collection. If that version is too old, you will have to build Redis from source. EPEL only contains Redis 3.2 as well.
Upgrading glibc within a current release in Red Hat Enterprise Linux (or CentOS) is not possible.
The root cause of make
fails to remove its temporarily created files is due to fact that Windows and its WSL uses case-insensitive FS.
Use fsutil on windows and attr(getfattr/setfattr) on linux to change case sensitivity.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With