GNU/Linux >> Linux の 問題 >  >> Linux

新しいバージョンの glibc を使用中にエラーが発生しました

私の場合は centos 6 でした pytorch の python を使用 .

次のようなエラーがありました:

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-

glibc-2.17 をローカル ディレクトリ /opt/exp_soft/tools にインストールしました

次に、conda env パッチ ツールにインストールしました (他のツールを使用してインストールすることもできます):

conda install -c conda-forge patchelf

次に、異なる glibc パスを使用するように Python のバイナリにパッチを適用しました (これは任意のバイナリで実行できます)。 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

もう 1 つのオプションは、完全な管理者アクセス権を持っている場合に、このスクリプトをインストールすることです:

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


<ブロック引用>

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

この回答は、LD_LIBRARY_PATH の理由を説明しています うまくいかない、代わりに何をすべきか.

<ブロック引用>

私はあなたの投稿を読んで試しました...
python: error while loading shared libraries: __vdso_time: invalid mode for dlopen(): Invalid argument

エラーは通常、不一致があることを意味します ld-linux の間 と libc.so.6 . しなければならない

/home/MYNAME/.../ld-2.16.so による直接ローダー呼び出しを使用している場合 、あなたもする必要があります /home/MYNAME/.../libc.so.6 の手配

--library-path ... を渡すことでそれを行うことができます ld-2.16.soまで 、または LD_LIBRARY_PATH を設定する

ld-2.16 --library-path ... ls を使用したコマンド ほぼ 正しい。あなたが見逃しているのは ld-2.16 です しません あなたの PATH を検索してください . フルにする必要があります パス名:ld-2.16 --library-path ... /bin/ls .


Linux
  1. OpenCA開始エラーを修正しますversion.pmが見つかりません

  2. MySQLでパスワードによってIDENTIFIEDでGRANTを使用中にエラーが発生しました

  3. ソースが安全に更新されている間にRsyncを使用していますか?

  1. SLES 12:Srvctl を使用して起動中に ORA-27300 ORA-27301 ORA-27303 のデータベース起動エラーが発生する

  2. cp:ディレクトリの省略 – Linux でディレクトリをコピー中にエラーが発生しました

  3. ldconfig エラー:シンボリック リンクではありません

  1. 共有ライブラリの読み込み中にエラーが発生しました:libncurses.so.5:

  2. Rails:gem を使用して特定のバージョンのライブラリをアンインストールする

  3. 多くの画像でmogrifyを使用するとエラーが発生します