我对 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
?