安装软件改变了共享库的路径

安装软件改变了共享库的路径

我对 Linux 的工作原理了解有限,但我会尽可能清楚地解释我的问题。

我最近尝试安装沃尔奇在 Ubuntu 15.04 上,但我无法启动它。从终端启动它时,我收到以下错误:

This application failed to start because it could not find or load the Qt platform plugin "xcb".

Reinstalling the application may fix this problem.
Abandon (core dumped)

谷歌搜索我发现的错误ldd可以帮助我了解问题的根源。我尝试了一下,得到了以下结果:

$ ldd /usr/bin/wallch 
    linux-vdso.so.1 =>  (0x00007ffeccfc6000)
    libunity.so.9 => /usr/lib/x86_64-linux-gnu/libunity.so.9 (0x00007fce6414b000)
    libdbusmenu-glib.so.4 => /usr/lib/x86_64-linux-gnu/libdbusmenu-glib.so.4 (0x00007fce63f2e000)
    libnotify.so.4 => /usr/lib/x86_64-linux-gnu/libnotify.so.4 (0x00007fce63d26000)
    libexif.so.12 => /usr/lib/x86_64-linux-gnu/libexif.so.12 (0x00007fce63ae2000)
    libgtk-x11-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 (0x00007fce63497000)
    libgio-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0 (0x00007fce63117000)
    libgobject-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 (0x00007fce62ec5000)
    libglib-2.0.so.0 => /lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x00007fce62bb6000)
    libQt5WebKitWidgets.so.5 => /usr/lib/x86_64-linux-gnu/libQt5WebKitWidgets.so.5 (0x00007fce645a1000)
    libQt5Widgets.so.5 => /opt/pgmodeler/lib/libQt5Widgets.so.5 (0x00007fce62331000)
    libQt5WebKit.so.5 => /usr/lib/x86_64-linux-gnu/libQt5WebKit.so.5 (0x00007fce5feb8000)
    libQt5Gui.so.5 => /opt/pgmodeler/lib/libQt5Gui.so.5 (0x00007fce5f6fa000)
    libQt5Network.so.5 => /opt/pgmodeler/lib/libQt5Network.so.5 (0x00007fce5f394000)
    libQt5Core.so.5 => /opt/pgmodeler/lib/libQt5Core.so.5 (0x00007fce5ec58000)
    libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007fce5e949000)
    libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fce5e641000)
    libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fce5e42b000)
    libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fce5e061000)
    libgmodule-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgmodule-2.0.so.0 (0x00007fce5de5d000)
    libdee-1.0.so.4 => /usr/lib/x86_64-linux-gnu/libdee-1.0.so.4 (0x00007fce5dc22000)
    libunity-protocol-private.so.0 => /usr/lib/x86_64-linux-gnu/libunity/libunity-protocol-private.so.0 (0x00007fce5d9da000)
    libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fce5d7bc000)
    libgdk_pixbuf-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0 (0x00007fce5d59a000)
    libgdk-x11-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0 (0x00007fce5d2e4000)
    libpangocairo-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0 (0x00007fce5d0d7000)
    libX11.so.6 => /usr/lib/x86_64-linux-gnu/libX11.so.6 (0x00007fce5cd9e000)
    libXfixes.so.3 => /usr/lib/x86_64-linux-gnu/libXfixes.so.3 (0x00007fce5cb98000)
    libatk-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libatk-1.0.so.0 (0x00007fce5c973000)
    libcairo.so.2 => /usr/lib/x86_64-linux-gnu/libcairo.so.2 (0x00007fce5c65d000)
    libpangoft2-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0 (0x00007fce5c447000)
    libpango-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libpango-1.0.so.0 (0x00007fce5c1f9000)
    libfontconfig.so.1 => /usr/lib/x86_64-linux-gnu/libfontconfig.so.1 (0x00007fce5bfbb000)
    libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007fce5bda0000)
    libselinux.so.1 => /lib/x86_64-linux-gnu/libselinux.so.1 (0x00007fce5bb7c000)
    libresolv.so.2 => /lib/x86_64-linux-gnu/libresolv.so.2 (0x00007fce5b960000)
    libffi.so.6 => /usr/lib/x86_64-linux-gnu/libffi.so.6 (0x00007fce5b758000)
    libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3 (0x00007fce5b4eb000)
    libQt5PrintSupport.so.5 => /opt/pgmodeler/lib/libQt5PrintSupport.so.5 (0x00007fce5b27b000)
    libQt5OpenGL.so.5 => /usr/lib/x86_64-linux-gnu/libQt5OpenGL.so.5 (0x00007fce6453c000)
    librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007fce5b073000)
    libXrender.so.1 => /usr/lib/x86_64-linux-gnu/libXrender.so.1 (0x00007fce5ae69000)
    libXcomposite.so.1 => /usr/lib/x86_64-linux-gnu/libXcomposite.so.1 (0x00007fce5ac66000)
    libjpeg.so.8 => /usr/lib/x86_64-linux-gnu/libjpeg.so.8 (0x00007fce5aa11000)
    libpng12.so.0 => /lib/x86_64-linux-gnu/libpng12.so.0 (0x00007fce5a7eb000)
    libxslt.so.1 => /usr/lib/x86_64-linux-gnu/libxslt.so.1 (0x00007fce5a5ae000)
    libxml2.so.2 => /usr/lib/x86_64-linux-gnu/libxml2.so.2 (0x00007fce5a1e5000)
    libgstreamer-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0 (0x00007fce59ed4000)
    libgstapp-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libgstapp-1.0.so.0 (0x00007fce59cc7000)
    libgstbase-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0 (0x00007fce59a68000)
    libgstpbutils-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libgstpbutils-1.0.so.0 (0x00007fce5983f000)
    libgstvideo-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libgstvideo-1.0.so.0 (0x00007fce595f2000)
    libgstaudio-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libgstaudio-1.0.so.0 (0x00007fce593a3000)
    libsqlite3.so.0 => /usr/lib/x86_64-linux-gnu/libsqlite3.so.0 (0x00007fce590dd000)
    libicui18n.so.52 => /usr/lib/x86_64-linux-gnu/libicui18n.so.52 (0x00007fce58ccb000)
    libicuuc.so.52 => /usr/lib/x86_64-linux-gnu/libicuuc.so.52 (0x00007fce5894d000)
    libQt5Quick.so.5 => /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5 (0x00007fce58560000)
    libQt5Qml.so.5 => /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5 (0x00007fce5812d000)
    libQt5Sql.so.5 => /usr/lib/x86_64-linux-gnu/libQt5Sql.so.5 (0x00007fce644f4000)
    libGL.so.1 => /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1 (0x00007fce57e91000)
    libicui18n.so.53 => /opt/pgmodeler/lib/libicui18n.so.53 (0x00007fce57a45000)
    libicuuc.so.53 => /opt/pgmodeler/lib/libicuuc.so.53 (0x00007fce576ba000)
    libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fce574b6000)
    libgthread-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgthread-2.0.so.0 (0x00007fce572b4000)
    /lib64/ld-linux-x86-64.so.2 (0x00007fce643ef000)
    libXinerama.so.1 => /usr/lib/x86_64-linux-gnu/libXinerama.so.1 (0x00007fce570b1000)
    libXi.so.6 => /usr/lib/x86_64-linux-gnu/libXi.so.6 (0x00007fce56ea1000)
    libXrandr.so.2 => /usr/lib/x86_64-linux-gnu/libXrandr.so.2 (0x00007fce56c97000)
    libXcursor.so.1 => /usr/lib/x86_64-linux-gnu/libXcursor.so.1 (0x00007fce56a8d000)
    libXdamage.so.1 => /usr/lib/x86_64-linux-gnu/libXdamage.so.1 (0x00007fce5688a000)
    libXext.so.6 => /usr/lib/x86_64-linux-gnu/libXext.so.6 (0x00007fce56678000)
    libfreetype.so.6 => /usr/lib/x86_64-linux-gnu/libfreetype.so.6 (0x00007fce563d0000)
    libxcb.so.1 => /usr/lib/x86_64-linux-gnu/libxcb.so.1 (0x00007fce561b1000)
    libpixman-1.so.0 => /usr/lib/x86_64-linux-gnu/libpixman-1.so.0 (0x00007fce55f04000)
    libxcb-shm.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-shm.so.0 (0x00007fce55d01000)
    libxcb-render.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-render.so.0 (0x00007fce55af8000)
    libharfbuzz.so.0 => /usr/lib/x86_64-linux-gnu/libharfbuzz.so.0 (0x00007fce558a1000)
    libthai.so.0 => /usr/lib/x86_64-linux-gnu/libthai.so.0 (0x00007fce55698000)
    libexpat.so.1 => /lib/x86_64-linux-gnu/libexpat.so.1 (0x00007fce5546f000)
    liborc-0.4.so.0 => /usr/lib/x86_64-linux-gnu/liborc-0.4.so.0 (0x00007fce551eb000)
    libgsttag-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libgsttag-1.0.so.0 (0x00007fce54fb0000)
    libicudata.so.52 => /usr/lib/x86_64-linux-gnu/libicudata.so.52 (0x00007fce53743000)
    libdouble-conversion.so.1 => /usr/lib/x86_64-linux-gnu/libdouble-conversion.so.1 (0x00007fce53532000)
    libglapi.so.0 => /usr/lib/x86_64-linux-gnu/libglapi.so.0 (0x00007fce53308000)
    libX11-xcb.so.1 => /usr/lib/x86_64-linux-gnu/libX11-xcb.so.1 (0x00007fce53106000)
    libxcb-glx.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-glx.so.0 (0x00007fce52eef000)
    libxcb-dri2.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-dri2.so.0 (0x00007fce52cea000)
    libxcb-dri3.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-dri3.so.0 (0x00007fce52ae7000)
    libxcb-present.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-present.so.0 (0x00007fce528e4000)
    libxcb-sync.so.1 => /usr/lib/x86_64-linux-gnu/libxcb-sync.so.1 (0x00007fce526de000)
    libxshmfence.so.1 => /usr/lib/x86_64-linux-gnu/libxshmfence.so.1 (0x00007fce524dc000)
    libXxf86vm.so.1 => /usr/lib/x86_64-linux-gnu/libXxf86vm.so.1 (0x00007fce522d6000)
    libdrm.so.2 => /usr/lib/x86_64-linux-gnu/libdrm.so.2 (0x00007fce520c9000)
    libicudata.so.53 => /opt/pgmodeler/lib/libicudata.so.53 (0x00007fce50a41000)
    libXau.so.6 => /usr/lib/x86_64-linux-gnu/libXau.so.6 (0x00007fce5083d000)
    libXdmcp.so.6 => /usr/lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007fce50637000)
    libgraphite2.so.3 => /usr/lib/x86_64-linux-gnu/libgraphite2.so.3 (0x00007fce5041b000)
    libdatrie.so.1 => /usr/lib/x86_64-linux-gnu/libdatrie.so.1 (0x00007fce50214000)

我看到wallch似乎使用位于/opt/pgmodeler/lib/(例如 libQt5Widgets.so.5)的共享库。pgModeler是我之前安装的软件,但与无关wallch,因此我发现共享库并不全部在/usr/lib/x86_64-linux-gnu/文件夹中,这很奇怪。

因此,我尝试wallch在卸载后重新安装pgModeler。它运行良好,并且使用的所有共享库wallch都位于/usr/lib/x86_64-linux-gnu/文件夹中。

之后我尝试重新安装pgModeler但又回到了第一种情况:wallch无法启动并出现相同的错误,并且尝试使用位于的共享库/opt/pgmodeler/lib/

有没有办法让这两个程序一起工作?也许可以通过手动指定共享库的位置wallch

相关内容