GNU/Linux >> Linux Esercitazione >  >> Linux

Errore durante l'utilizzo di una versione più recente di glibc

Nel mio caso era centos 6 con python per pytorch .

Ho avuto errori come, ecc.:

libraries: __vdso_time: invalid mode for dlopen(): Invalid argument

ImportError: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by /home/evaldsu/.conda/envs/conda_env/lib/python3.6/site-

Ho installato insieme a glibc-2.17 nella directory locale /opt/exp_soft/tools

quindi ho installato nello strumento di patching conda env (può essere installato anche utilizzando altri strumenti):

conda install -c conda-forge patchelf

poi ho patchato il binario di python per usare un diverso percorso glibc (puoi farlo con qualsiasi binario). Tieni presente che cambierà il tuo binario python.

patchelf --set-rpath /opt/exp_soft/tools/glibc-2.17/lib:$HOME/.conda/envs/conda_inf/lib:/usr/lib64:/lib64:/lib --set-interpreter /opt/exp_soft/tools/glibc-2.17/lib/ld-linux-x86-64.so.2 /home/evaldsu/.conda/envs/conda_inf/bin/python3.6

Un'altra opzione è semplicemente installare questo script se si dispone dell'accesso completo come amministratore:

https://gist.github.com/harv/f86690fcad94f655906ee9e37c85b174


export LD_LIBRARY_PATH=/home/MYNAME/dependency/glibc-2.16/lib

Questa risposta spiega perché LD_LIBRARY_PATH non funziona e cosa dovresti fare invece.

ho letto il tuo post e ho provato...
python: error while loading shared libraries: __vdso_time: invalid mode for dlopen(): Invalid argument

L'errore di solito indica che hai una mancata corrispondenza tra ld-linux e libc.so.6 . Devono corrispondenza.

Se stai usando l'invocazione diretta del caricatore tramite /home/MYNAME/.../ld-2.16.so , devi anche organizzare per /home/MYNAME/.../libc.so.6 da caricare.

Puoi farlo passando --library-path ... a ld-2.16.so o impostando LD_LIBRARY_PATH in modo appropriato.

Il tuo comando con ld-2.16 --library-path ... ls è quasi corretta. Quello che ti manca è quel ld-2.16 non cerca il tuo PATH . Devi darlo pieno percorso:ld-2.16 --library-path ... /bin/ls .


Linux
  1. SLES 12:errore di avvio del database con ORA-27300 ORA-27301 ORA-27303 durante l'avvio dell'utilizzo di Srvctl

  2. cp:ousing directory – errore durante la copia di una directory in Linux

  3. Usando e in Bash mentre il ciclo

  4. errore durante il caricamento delle librerie condivise:libncurses.so.5:

  5. Rails:disinstalla una versione specifica di una libreria utilizzando gem

Errore Virtualbox – Impossibile caricare il modulo ring-0 VBoxEhciR0.r0

Errore SMTP durante l'utilizzo di PHPMailer con l'autenticazione di Gmail

Errore di installazione PHP5-Curl nessun candidato all'installazione

Impossibile allocare memoria mentre nessun processo sembra utilizzare la memoria

Errore Yum durante l'installazione di MongoDB su CentOS?

Quale versione di RHEL sto usando?