redhat linux 6 glibc_2.14 not found error
nin0-0 opened this issue · 1 comments
nin0-0 commented
on RHEL6 I see:
[22407] Error loading Python lib '/tmp/_MEI7VUFgo/libpython3.7m.so.1.0': dlopen: /lib64/libc.so.6: version 'GLIBC_2.14' not found (required by /tmp/_MEI7VUFgo/libpython3.7m.so.1.0)
When I compile and install glibc-2.14 manually and export as an env variable, I get:
export LD_LIBRARY_PATH=/var/opt/glibc-2.14/lib && /tmp/log4j-finder -b
Traceback (most recent call last):
File "log4j-finder.py", line 29, in <module>
File "/root/.pyenv/versions/3.7.5/lib/python3.7/site-packages/PyInstaller/loader/pyimod03_importers.py", line 623, in exec_module
File "platform.py", line 116, in <module>
File "/root/.pyenv/versions/3.7.5/lib/python3.7/site-packages/PyInstaller/loader/pyimod03_importers.py", line 623, in exec_module
File "subprocess.py", line 153, in <module>
ImportError: /var//opt/glibc-2.14/lib/libc.so.6: version `GLIBC_2.15' not found (required by /tmp/_MEIWmgHt6/select.cpython-37m-x86_64-linux-gnu.so)
You guessed it, so I build and compiled glibc-2.15 too, and then it gives again the first error.
What I don't understand is that seemingly it's not using these glibc versions:
objdump -T /tmp/log4j-finder
/tmp/log4j-finder: file format elf64-x86-64
DYNAMIC SYMBOL TABLE:
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.3.4 __strcat_chk
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 getenv
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.3.4 __snprintf_chk
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 raise
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 free
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.3.4 __vfprintf_chk
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 unlink
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 strncpy
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 strncmp
0000000000000000 w D *UND* 0000000000000000 _ITM_deregisterTMCloneTable
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 strcpy
0000000000000000 DF *UND* 0000000000000000 inflate
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 mkdir
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 ferror
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 fread
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 mbstowcs
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 setenv
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 getpid
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 fclose
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 opendir
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 stpcpy
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 rmdir
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 strlen
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 setbuf
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 strchr
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 dirname
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 memset
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 strnlen
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 strncat
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.4 __realpath_chk
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 closedir
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 __strdup
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 __libc_start_main
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 wcsncpy
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 calloc
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 strcmp
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 signal
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 ftell
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 feof
0000000000000000 w D *UND* 0000000000000000 __gmon_start__
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 clearerr
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.3 realpath
0000000000000000 DF *UND* 0000000000000000 inflateEnd
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 kill
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 __xpg_basename
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 fileno
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.3.4 __stpcpy_chk
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 __xstat
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 readdir
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 dlopen
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 malloc
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 fflush
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 nl_langinfo
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 fseek
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.3.4 __vsnprintf_chk
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.3.4 __strncpy_chk
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.3.4 __strcpy_chk
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 mkdtemp
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 setlocale
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 fchmod
0000000000000000 DF *UND* 0000000000000000 inflateInit_
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 waitpid
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 fopen
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 perror
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 strtok
0000000000000000 w D *UND* 0000000000000000 _Jv_RegisterClasses
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 unsetenv
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 execvp
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 strcat
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 fwrite
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.3.4 __fprintf_chk
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.3.4 __strncat_chk
0000000000000000 w D *UND* 0000000000000000 _ITM_registerTMCloneTable
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 dlsym
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 fork
0000000000000000 DF *UND* 0000000000000000 GLIBC_2.2.5 dlerror
0000000000607a40 g DO .bss 0000000000000008 GLIBC_2.2.5 stdout
0000000000607a48 g DO .bss 0000000000000008 GLIBC_2.2.5 stdin
0000000000607a50 g DO .bss 0000000000000008 GLIBC_2.2.5 stderr
Could you compile the binary also for older versions of glibc, like 2.12? Or perhaps there's some option that does something dynamic, I'm no expert.
pven commented
I get the same error on RHEL 6.1:
[root@server]# ./log4j-finder
[89021] Error loading Python lib '/tmp/_MEI9gY1r0/libpython3.7m.so.1.0': dlopen: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by /tmp/_MEI9gY1r0/libpython3.7m.so.1.0)
[root@server]#
I am not able to solve this without installing pyhthon3.