首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法加载共享库libXt.so.6 -尽管它可以被定位

无法加载共享库libXt.so.6 -尽管它可以被定位
EN

Ask Ubuntu用户
提问于 2019-01-13 15:11:28
回答 1查看 15.5K关注 0票数 2

启动二进制->不能打开共享库

我想启动一个二进制:

代码语言:javascript
复制
$ my@mypc:~/Machinarium$ ./Machinarium
./Machinarium: error while loading shared libraries: libXt.so.6: cannot open shared object file: No such file or directory

这里

(当我试图通过linux32 ./Machinarium启动它时,也会发生同样的情况。这是一个32位的linux二进制文件,我有一台64位的机器。(苏藤也是如此。)

定位库(它存在)

我试图找到它:(第四行从底部是最重要的)

代码语言:javascript
复制
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位版本。(跟随堆叠溢出的答案.)

代码语言:javascript
复制
me@mypc:~/Machinarium$ sudo apt install libxtst6:i386
libxtst6:i386 already is the newest version (2:1.2.3-1).

(翻译由我翻译。这是apt简短的回答中的一句话。)

需求检查->未找到

我检查了二进制文件的要求:(我只给出了输出的重要行,而忽略了任何其他行,如果您真的需要其余的代码,我想知道它是做什么的,如果需要的话,只需在注释中告诉我!)

代码语言:javascript
复制
me@mypc:~/Machinarium$ ldd Machinarium
libXt.so.6 => not found

问题

  • 为什么二进制文件找不到共享库?
  • 怎么解决这个问题?
EN

回答 1

Ask Ubuntu用户

回答已采纳

发布于 2019-01-13 15:17:40

根据对https://packages.ubuntu.com的搜索,libXt.so.6位于libxt6套餐

你可以用

代码语言:javascript
复制
sudo apt install libxt6:i386

32位。

票数 4
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/1109393

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档