在 64 位 Linux 安装中缺少 32 位库

jip*_*pie 2 64bit ubuntu libraries java

我想弄清楚为什么 Eclipse 抱怨找不到库。我已经设法将 java 问题重现/减少到:

$ ldd /home/jhendrix/.swt/lib/linux/x86/libswt-pi-gtk-3833.so
        linux-gate.so.1 =>  (0xf76fa000)
        libgtk-x11-2.0.so.0 => not found
        libgthread-2.0.so.0 => /usr/lib/i386-linux-gnu/libgthread-2.0.so.0 (0xf7674000)
        libXtst.so.6 => not found
        libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xf74c9000)
        libglib-2.0.so.0 => /lib/i386-linux-gnu/libglib-2.0.so.0 (0xf73cd000)
        /lib/ld-linux.so.2 (0xf76fb000)
        libpcre.so.3 => /lib/i386-linux-gnu/libpcre.so.3 (0xf738d000)
        libpthread.so.0 => /lib/i386-linux-gnu/libpthread.so.0 (0xf7372000)
        librt.so.1 => /lib/i386-linux-gnu/librt.so.1 (0xf7368000)
Run Code Online (Sandbox Code Playgroud)

事实上,java 正在抱怨无法定位libgtk-x11-2.0.so.0. 但是当我检查时ldconfig,图书馆就在那里:

$ sudo ldconfig -v 2>&1 | grep -E '(libgtk-x11-2.0.so.0|libXtst.so.6)'
        libXtst.so.6 -> libXtst.so.6.1.0
        libgtk-x11-2.0.so.0 -> libgtk-x11-2.0.so.0.2400.13
Run Code Online (Sandbox Code Playgroud)

我怀疑它与运行 64 位系统、运行 32 位自定义 Eclipse 构建(Texas Instruments Code Composer 5)有关:

$ locate libgtk-x11-2.0.so.0 libXtst.so.6
/usr/lib/x86_64-linux-gnu/libXtst.so.6
/usr/lib/x86_64-linux-gnu/libXtst.so.6.1.0
/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0.2400.13
Run Code Online (Sandbox Code Playgroud)

我认为问题是:如何在 64 位 Ubuntu 12.10 上为该库安装 32 位版本?其次:这有可能解决问题吗?

jor*_*anm 6

64 位 Ubuntu 的现代版本默认启用了 dpkg 多架构。您可以通过:i386在包名末尾添加来安装 32 位包。您可以在此处找到有关 Ubuntu 中多架构的更多信息。