Версия `GLIBC_2.33' не найдена при попытке открыть vscode из терминала

Когда я пытаюсь открыть Visual Studio Code с помощью командной строки code в Терминале, я получаю эту ошибку, которую не понимаю:

$ code
/snap/code/117/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders: /snap/core/current/lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by /usr/lib/x86_64-linux-gnu/libstdc++.so.6)
/snap/code/117/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders: /snap/core/current/lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.25' not found (required by /usr/lib/x86_64-linux-gnu/libstdc++.so.6)
/snap/code/117/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders: /snap/core/current/lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by /usr/lib/x86_64-linux-gnu/libstdc++.so.6)
/snap/code/117/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders: /snap/core/current/lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /usr/lib/x86_64-linux-gnu/libstdc++.so.6)
/snap/code/117/usr/share/code/bin/../code: /snap/core/current/lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by /usr/lib/x86_64-linux-gnu/libstdc++.so.6)
/snap/code/117/usr/share/code/bin/../code: /snap/core/current/lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.25' not found (required by /usr/lib/x86_64-linux-gnu/libstdc++.so.6)
/snap/code/117/usr/share/code/bin/../code: /snap/core/current/lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by /usr/lib/x86_64-linux-gnu/libstdc++.so.6)
/snap/code/117/usr/share/code/bin/../code: /snap/core/current/lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /usr/lib/x86_64-linux-gnu/libstdc++.so.6)

Я использую snap-пакет vscode:

$ snap info code
name:      code
summary:   Code editing. Redefined.
publisher: Visual Studio Code (vscode✓)
store-url: https://snapcraft.io/code
contact:   https://twitter.com/code
license:   unset
description: |
  Visual Studio Code is a new choice of tool that combines the
  simplicity of a code editor with what developers need for the core
  edit-build-debug cycle.
commands:
  - code
  - code.url-handler
snap-id:      Ht0aUHi7ofh9Fbwh6m7jUN2pAy6kzBiu
tracking:     latest/stable
refresh-date: 5 days ago, at 07:48 CET
channels:
  latest/stable:    97dec172 2023-01-10 (117) 259MB classic
  latest/candidate: ↑                               
  latest/beta:      ↑                               
  latest/edge:      ↑                               
installed:          97dec172            (117) 259MB classic

251
1

Ответ:

Решено

Обновлять:

Сбой был вызван LD_PRELOAD указанием на систему libstdc++.so.6.

Общий совет: никогда не ставьте LD_PRELOAD в свой ~/.bashrc. Если для конкретной программы требуется, чтобы вы установили LD_PRELOAD, создайте оболочку для этой программы в своем ~/bin/ и установите LD_PRELOAD в этой оболочке, чтобы затрагивалась только эта конкретная программа.


Я получил эту ошибку, которую я не понимаю

Ошибка означает: code двоичный файл использует две библиотеки: /usr/lib/x86_64-linux-gnu/libstdc++.so.6 и /snap/core/current/lib/x86_64-linux-gnu/libc.so.6, которые несовместимы.

В частности, для системы libstdc++.so.6 требуется более новая libc.so.6, чем найденная в /snap/core/....

Судя по сообщению об ошибке, libstdc++.so.6 был скомпилирован в системе (и требует) GLIBC-2.34 или новее, а /snap/core/.../libc.so.6 старше, чем GLIBC-2.25.

Вы можете узнать точную версию /snap/core/.../libc.so.6, вызвав ее, как если бы это была программа — она напечатает свою собственную версию.


Ошибка указывает на какую-то проблему с настройкой / конфигурацией snap (я понятия не имею, что это такое). Скорее всего, вам нужно установить более старую версию libstdc++.so.6 в /snap/core/....