【问题标题】:Can't find/install libXtst.so.6?找不到/安装 libXtst.so.6?
【发布时间】:2013-06-25 16:55:09
【问题描述】:

我正在运行 Ubuntu 12.10,并且正在尝试安装 Netbeans 7.1(或更高版本) 我有 .sh 文件,但它不会安装,错误出现在这里:

[2013-06-27 19:11:28.918]:      at org.netbeans.installer.Installer.main(Installer.java:81)
[2013-06-27 19:11:28.918]:     An error occured while initializing the NetBeans IDE installer UI.
[2013-06-27 19:11:28.918]:     Most probably the running JVM is not compatible with the current platform.
[2013-06-27 19:11:28.919]:     See FAQ at http://wiki.netbeans.org/FaqUnableToPrepareBundledJdk for more information.
[2013-06-27 19:11:28.919]:     /usr/local/java/jre1.7.0_25/lib/i386/xawt/libmawt.so: libXtst.so.6: cannot open shared object file: No such file or directory
[2013-06-27 19:11:28.919]:     
[2013-06-27 19:11:28.919]:     Exception:
[2013-06-27 19:11:28.919]:       java.lang.UnsatisfiedLinkError:
[2013-06-27 19:11:28.919]:       /usr/local/java/jre1.7.0_25/lib/i386/xawt/libmawt.so: libXtst.so.6: cannot open shared object file: No such file or directory
[2013-06-27 19:11:28.919]:     
[2013-06-27 19:11:28.919]:     You can get more details about the issue in the installer log file:
[2013-06-27 19:11:28.919]:      /root/.nbi/log/20130627191128.log

我在任何目录中都没有 libXtst.so.6 文件,而且我似乎无法在任何地方找到它可以下载。有没有其他人遇到过这个问题,或者知道解决方法?

【问题讨论】:

  • /usr/local/java/jre1.7.0_25 是从哪里来的?
  • 这是甲骨文。我在打开 jre 时遇到问题
  • 我强烈建议只运行sudo apt-get install openjdk-6- jdk 并查看该Java 版本是否足以满足您的目的。那是在你的平台上构建的,应该可以开箱即用
  • 我以前有过,但它在使用 Netbeans 时出现错误。相信我,我宁愿使用 openjdk/jre 而不是 Oracle 的,但无论出于何种原因,它都不适用于 Netbeans。
  • 每当您在 Linux 下遇到软件包问题时,请检查支持哪些平台。 wiki.netbeans.org/NetBeans_70_Supported_Platforms - 如果“我需要这个工作”很重要,那么你应该只使用其中一个。这里是 Ubuntu 10.10。

标签: java linux ubuntu netbeans command-line


【解决方案1】:

编辑:正如Stephen Niedzielski 在他的评论中提到的,问题似乎来自 JRE 的 32 位存在,事实上,它正在寻找 32 位版本的libXtst6。安装所需版本的库:

$ sudo apt-get install libxtst6:i386

类型:

$ sudo apt-get update
$ sudo apt-get install libxtst6

如果不行,请输入:

$ sudo updatedb
$ locate libXtst

它应该返回类似:

/usr/lib/x86_64-linux-gnu/libXtst.so.6       # Mine is OK
/usr/lib/x86_64-linux-gnu/libXtst.so.6.1.0

如果您没有libXtst.so.6 但有libXtst.so.6.X.X,请创建符号链接:

$ cd /usr/lib/x86_64-linux-gnu/
$ ln -s libXtst.so.6 libXtst.so.6.X.X

希望这会有所帮助。

【讨论】:

  • 什么也没做,它安装了一些东西,但我仍然得到同样的错误。
  • $ locate libXtst 有什么用?什么都没有?
  • 现在,我得到 '[2013-06-28 00:24:46.802]: /usr/local/java/jre1.7.0_25/lib/i386/xawt/libmawt.so: libXtst.so.6:错误的 ELF 类:ELFCLASS64'
  • 尝试另一个 32 位/64 位版本。
  • sudo apt-get install libxtst6:i386
【解决方案2】:

这在 Luna 基本操作系统中对我有用

sudo apt-get install libxtst6:i386

【讨论】:

    【解决方案3】:

    您的问题来自 JDK/JRE 的 32/64 位版本...您的共享库正在搜索 32 位版本。

    您的默认 JDK 是 32 位版本。尝试默认安装 64 位,然后重新启动 `.sh 文件。

    【讨论】:

      【解决方案4】:

      在 Ubuntu 14.04 上遇到过这个问题,就我而言,我还缺少 libXtst.so

      Could not open library 'libXtst.so': libXtst.so: cannot open shared object 
      file: No such file or directory
      

      确保您的符号链接指向正确的文件, cd /usr/lib/x86_64-linux-gnu 并列出 libXtst:

       ll |grep libXtst                                                                                                                                                           
       lrwxrwxrwx   1 root root        16 Oct  7  2016 libXtst.so.6 -> libXtst.so.6.1.0
       -rw-r--r--   1 root root     22880 Aug 16  2013 libXtst.so.6.1.0
      

      然后只需使用以下命令创建正确的符号链接:

      sudo ln -s libXtst.so.6 libXtst.so
      

      再次列出:

      ll | grep libXtst
      lrwxrwxrwx   1 root root        12 Sep 20 10:23 libXtst -> libXtst.so.6
      lrwxrwxrwx   1 root root        12 Sep 20 10:23 libXtst.so -> libXtst.so.6
      lrwxrwxrwx   1 root root        16 Oct  7  2016 libXtst.so.6 -> libXtst.so.6.1.0
      -rw-r--r--   1 root root     22880 Aug 16  2013 libXtst.so.6.1.0
      

      一切就绪!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-10-04
        • 2021-02-15
        • 2019-10-30
        • 1970-01-01
        • 1970-01-01
        • 2023-02-22
        相关资源
        最近更新 更多