не может загрузить совместно использованную библиотеку libXt.so.6 - хотя она может быть расположена

Стартовый двоичный файл-> не может открыть совместно использованную библиотеку

Я хочу запустить двоичный файл:

$ my@mypc:~/Machinarium$ ./Machinarium
./Machinarium: error while loading shared libraries: libXt.so.6: cannot open shared object file: No such file or directory

e здесь

(То же происходит, когда я пытаюсь запустить его через linux32 ./Machinarium. Это - двоичный файл Linux на 32 бита, и у меня есть машина на 64 бита. То же с sudo.)


Определение местоположения библиотеки (это существует),

Я пытался определить местоположение его: (четвертая строка от нижней части является важной),

me@mypc:~/Machinarium$ locate libXt
/home/me/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libXt.so.6
/home/me/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libXt.so.6.0.0
/home/me/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libXtst.so.6
/home/me/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libXtst.so.6.1.0
/home/me/.local/share/Steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu/libXt.so.6
/home/me/.local/share/Steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu/libXt.so.6.0.0
/home/me/.local/share/Steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu/libXtst.so.6
/home/me/.local/share/Steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu/libXtst.so.6.1.0
/home/me/.local/share/Steam/ubuntu12_32/steam-runtime.old/amd64/usr/lib/x86_64-linux-gnu/libXt.so.6
/home/me/.local/share/Steam/ubuntu12_32/steam-runtime.old/amd64/usr/lib/x86_64-linux-gnu/libXt.so.6.0.0
/home/me/.local/share/Steam/ubuntu12_32/steam-runtime.old/amd64/usr/lib/x86_64-linux-gnu/libXtst.so.6
/home/me/.local/share/Steam/ubuntu12_32/steam-runtime.old/amd64/usr/lib/x86_64-linux-gnu/libXtst.so.6.1.0
/home/me/.local/share/Steam/ubuntu12_32/steam-runtime.old/i386/usr/lib/i386-linux-gnu/libXt.so.6
/home/me/.local/share/Steam/ubuntu12_32/steam-runtime.old/i386/usr/lib/i386-linux-gnu/libXt.so.6.0.0
/home/me/.local/share/Steam/ubuntu12_32/steam-runtime.old/i386/usr/lib/i386-linux-gnu/libXtst.so.6
/home/me/.local/share/Steam/ubuntu12_32/steam-runtime.old/i386/usr/lib/i386-linux-gnu/libXtst.so.6.1.0
/usr/lib/x86_64-linux-gnu/libXt.a
/usr/lib/x86_64-linux-gnu/libXt.so
/usr/lib/x86_64-linux-gnu/libXt.so.6
/usr/lib/x86_64-linux-gnu/libXt.so.6.0.0
/usr/lib/x86_64-linux-gnu/libXtst.so.6
/usr/lib/x86_64-linux-gnu/libXtst.so.6.1.0

Таким образом, что произошло? Это ясно там. Почему это не может быть найдено?


Установите i386 версию явно

Я думал, так как это - маркированная папка x86_64 это не могло бы быть совместимо с той игрой на 32 бита. Таким образом, я установил версию на 32 бита явно. (После этого ответ stackoverflow.)

me@mypc:~/Machinarium$ sudo apt install libxtst6:i386
libxtst6:i386 already is the newest version (2:1.2.3-1).

(перевод мной. Это - одна строка того, что говорит очень поддержанный ответ Кв.)


Проверка требований-> не найденный

Я проверил требования на двоичный файл: (Я только даю Вам важную строку вывода и игнорирую любую другую строку, если Вам действительно нужны остальные, интересно что для. Просто скажите мне в комментариях в случае необходимости!)

me@mypc:~/Machinarium$ ldd Machinarium
libXt.so.6 => not found

Вопрос

  • Почему не делает двоичной находки общая библиотека?
  • Как зафиксировать это?
1
задан 13 January 2019 в 18:18

1 ответ

Согласно поиску на https://packages.ubuntu.com libXt.so.6 расположен в libxt6 пакет.

Можно установить его с

sudo apt install libxt6:i386

для 32-разрядного.

2
ответ дан 7 December 2019 в 13:19

Другие вопросы по тегам:

Похожие вопросы: