title: Qt5 Linker Error: version `Qt_5' not found
body: <h1>1 The Problem</h1>
  
  <p>I am attempting to build the open-source <a href="https://github.com/evil0sheep/motorcar" rel="noreferrer">motorcar</a> project from scratch on an Arch Linux machine.  Motorcar is a linux VR window manager to be used with the Oculus Rift D2K headset in conjunction with Razer Hydra controllers. You don't need these items to actually compile this project though.</p>
  
  <p><strong>The problem:</strong> I cannot get motorcar to compile on my machine (Arch Linux). I am suffering from a Qt5 linking error (explained below).</p>
  
  <h1>2 Motorcar Prerequisites &amp; Build Targets</h1>
  
  <p>As the <a href="https://github.com/evil0sheep/motorcar" rel="noreferrer">README</a> indicates, the following prerequisites are needed in order to build motorcar:</p>
  
  <ol>
  <li>Mesa, compiled with EGL and Desktop OpenGL support.</li>
  <li>Cairo, compiled with EGL and Desktop OpenGL support.</li>
  <li>QtWayland 5.5 (which requires Qt5.5).</li>
  <li>Wayland (a linux window manager protocol).</li>
  </ol>
  
  <p>Furthermore, the motorcar project is divided up into the following actual build targets:</p>
  
  <ol>
  <li><code>libmotorcar-compositor</code>: this is the actual motorcar library used to support the build targets after this one.</li>
  <li><code>simple-compositor</code>: this is a simple Wayland compositor which you can launch from the console. Once it's launched (on your screen, not in a VR headset), you can launch 3D window programs within it.</li>
  <li><code>rift-hydra-compositor</code>: this is the same as the <code>simple-compositor</code>, except it is equipped with support for the Oculus Rift D2K headset and Razer Hydra controllers.</li>
  <li><code>motorcar-client-demo</code>: This is the <strong>client</strong> "window" which is meant to run in either <code>simple-compositor</code> or the <code>rift-hydra-compositor</code>. It's merely a rotating cube. Once you launch the <code>simple-compositor</code>, you should be able to alt-tab to a console and run <code>motorcar-client-demo</code> (which will launch the 3D cube within the running <code>simple-compositor</code>).</li>
  </ol>
  
  <h1>3 How I Attempted to Build the Motorcar Targets (And the Errors That I'm Getting)</h1>
  
  <p>My system: Arch Linux with nvidia graphics card (running <code>nvidia</code> drivers).</p>
  
  <p>First note that the motorcar project provides a <code>build.sh</code> script. I've tried using it and it doesn't work on my system. Therefore, I compiled everything from source. Here is how I did it (leading to the eventual error).</p>
  
  <h2>3.1 How I Built Mesa</h2>
  
  <p>First I downloaded <code>mesa-13.0.2.tar.gz</code> from <a href="ftp://ftp.freedesktop.org/pub/mesa/13.0.2/" rel="noreferrer">mesa</a>. After removing it from its tar, I ran:</p>
  
  <pre><code>$ ./configure --prefix=$WLD --enable-gles2 --disable-gallium-egl --with-egl-platforms=x11,wayland,drm --enable-gbm --enable-shared-glapi --with-gallium-drivers=r300,r600,swrast,nouveau --enable-glx-tls # what should $WLD be here? It might have been left blank.
  $ make
  $ sudo make install
  </code></pre>
  
  <h2>3.2 How I Built Cairo</h2>
  
  <p>First I downloaded <code>LATEST-cairo-1.14.6</code> linked from <a href="https://www.cairographics.org/releases" rel="noreferrer">cairo's website</a>. After removing it from its tar, I ran:</p>
  
  <pre><code>$ ./configure --prefix=$WLD --enable-xcb=yes --enable-gl=yes -enable-egl=yes # what should $WLD be here? It might have been left blank.
  $ make
  $ sudo make install
  </code></pre>
  
  <h2>3.3 How I Built Wayland</h2>
  
  <p>I just used my package manager for this.</p>
  
  <pre><code>$ sudo pacman -S wayland
  $ sudo pacman -S weston # in case this is relevant
  </code></pre>
  
  <h2>3.4 How I Built qtwayland and qt5.5</h2>
  
  <p>Here I followed the instructions of motorcar's README:</p>
  
  <pre><code>$ cd ~
  $ git clone git://code.qt.io/qt/qt5.git qt5
  $ cd qt5
  $ git checkout 1497a398e34e18abb18f705b2294464840629ca1 # the Qt5 commit hash confirmed to work from the README
  $ ./init-repository --no-webkit  --module-subset=qtbase,qtdeclarative,qtwayland # I removed qtjsbackend from the module-subset since it isn't strictly needed
  
  $ cd qtbase
  $ git checkout 7010da2e6274febf71db40a535ce1d0c4858f143 # the qtbase commit hash confirmed to work from the README
  $ cd ../qtwayland
  $ git checkout 3dc9cfdbd2771c28c770d432b99e571db43fe599 # the qtwayland commit hash confirmed to work from the README
  $ cd ../
  $ ./configure -prefix /opt/qt5  -debug -confirm-license -opensource -egl -opengl -no-xcb-xlib
  
  $ cd qtwayland
  $ git clean -fdx
  $ ../qtbase/bin/qmake CONFIG+=wayland-compositor
  $ cd ../
  $ make -j4 # the -j4 flag speeds up make by a factor of 4; otherwise this build takes a LONG time
  $ make install
  </code></pre>
  
  <h2>3.5 How I built <code>libmotorcar-compositor</code></h2>
  
  <pre><code>$ cd ~
  $ git clone https://github.com/evil0sheep/motorcar.git motorcar
  $ /opt/qt5/bin/qmake
  $ make
  </code></pre>
  
  <h2>3.6 How I attempted and FAILED to build <code>simple-compositor</code></h2>
  
  <pre><code>$ cd ~/motorcar/src/examples/compositors/simple-compositor
  $ make
  g++  main.cpp  -std=c++11  -I../../../../src/compositor -I../../../../src/protocol -I../../../../src/device -L../../../../lib -lmotorcar-compositor  -o simple-compositor 
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QGuiApplication::primaryScreen()@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QSurfaceFormat::setDepthBufferSize(int)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QWaylandCompositor::QWaylandCompositor(char const*, QFlags&lt;QWaylandCompositor::ExtensionFlag&gt;)'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QTimer::start(int)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QMatrix4x4::translate(float, float)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QOpenGLContext::defaultFramebufferObject() const@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QWindow::resizeEvent(QResizeEvent*)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QGuiApplication::exec()@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QSurfaceFormat::setStencilBufferSize(int)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QSurfaceFormat::~QSurfaceFormat()@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `qFlagLocation(char const*)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QObject::childEvent(QChildEvent*)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QMetaObject::Connection::~Connection()@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QObject::staticMetaObject@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QWindow::metaObject() const@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QWindow::create()@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QWindow::focusObject() const@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QWindow::setSurfaceType(QSurface::SurfaceType)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QWindow::wheelEvent(QWheelEvent*)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QWindow::accessibleRoot() const@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QOpenGLTextureCache::QOpenGLTextureCache(QOpenGLContext*)@Qt_5_PRIVATE_API'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QSurfaceFormat::QSurfaceFormat(QSurfaceFormat const&amp;)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QWindow::focusOutEvent(QFocusEvent*)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `non-virtual thunk to QWindow::format() const@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QOpenGLShaderProgram::addShaderFromSourceCode(QFlags&lt;QOpenGLShader::ShaderTypeBit&gt;, char const*)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QPixmap::fromImage(QImage const&amp;, QFlags&lt;Qt::ImageConversionFlag&gt;)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QOpenGLTexture::QOpenGLTexture(QImage const&amp;, QOpenGLTexture::MipMapGeneration)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QWindow::qt_metacast(char const*)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QScreen::geometry() const@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QObject::~QObject()@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QOpenGLShaderProgram::QOpenGLShaderProgram(QObject*)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QWindow::tabletEvent(QTabletEvent*)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QObject::timerEvent(QTimerEvent*)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QWindow::showEvent(QShowEvent*)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QWindow::nativeEvent(QByteArray const&amp;, void*, long*)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QWindow::setGeometry(QRect const&amp;)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QMatrix4x4::scale(float, float)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QSurfaceFormat::setSwapInterval(int)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QObject::installEventFilter(QObject*)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QOpenGLShaderProgram::release()@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QWaylandCompositor::createOutput(QWindow*, QString const&amp;, QString const&amp;)'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QListData::dispose(QListData::Data*)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QOpenGLContext::QOpenGLContext(QObject*)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QOpenGLContext::create()@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QImage::height() const@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QTimer::~QTimer()@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QDateTime::currentMSecsSinceEpoch()@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QObject::eventFilter(QObject*, QEvent*)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QCoreApplication::self@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QGuiApplication::screens()@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QWindow::hideEvent(QHideEvent*)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QObject::disconnectNotify(QMetaMethod const&amp;)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QCursor::~QCursor()@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QCursor::QCursor(QPixmap const&amp;, int, int)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QOpenGLTexture::textureId() const@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QImage::~QImage()@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QObject::connect(QObject const*, char const*, QObject const*, char const*, Qt::ConnectionType)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QObject::qt_metacall(QMetaObject::Call, int, void**)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QOpenGLContext::functions() const@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QObjectData::dynamicMetaObject() const@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QOpenGLContext::setFormat(QSurfaceFormat const&amp;)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QWaylandCompositor::openUrl(QWaylandClient*, QUrl const&amp;)'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QScreen::refreshRate() const@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QWindow::keyPressEvent(QKeyEvent*)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QGuiApplication::changeOverrideCursor(QCursor const&amp;)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QObject::qt_metacast(char const*)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QOpenGLShaderProgram::setUniformValue(int, QMatrix4x4 const&amp;)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QWindow::mouseReleaseEvent(QMouseEvent*)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QImage::QImage()@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QWindow::mouseDoubleClickEvent(QMouseEvent*)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QWindow::event(QEvent*)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QWindow::isExposed() const@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QImage::convertToFormat_helper(QImage::Format, QFlags&lt;Qt::ImageConversionFlag&gt;) const@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QWindow::surfaceHandle() const@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QWindow::qt_metacall(QMetaObject::Call, int, void**)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QListData::detach(int)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QWindow::moveEvent(QMoveEvent*)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QObject::sender() const@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `typeinfo for QWindow@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QWindow::mousePressEvent(QMouseEvent*)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QString::fromAscii_helper(char const*, int)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QObject::event(QEvent*)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QWindow::QWindow(QScreen*)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QOpenGLTexture::~QOpenGLTexture()@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `non-virtual thunk to QWindow::surfaceType() const@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QPixmap::~QPixmap()@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QOpenGLShaderProgram::bind()@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QImage::width() const@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QGuiApplication::queryKeyboardModifiers()@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QWindow::mouseMoveEvent(QMouseEvent*)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QWindow::keyReleaseEvent(QKeyEvent*)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `non-virtual thunk to QWindow::surfaceHandle() const@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QMetaObject::cast(QObject*) const@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QOpenGLContext::makeCurrent(QSurface*)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QWindow::exposeEvent(QExposeEvent*)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QWindow::~QWindow()@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QOpenGLShaderProgram::attributeLocation(char const*) const@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QImage::constBits() const@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QArrayData::deallocate(QArrayData*, unsigned long, unsigned long)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QGuiApplication::setOverrideCursor(QCursor const&amp;)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QWindow::format() const@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `qt_assert(char const*, char const*, int)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QOpenGLShaderProgram::uniformLocation(char const*) const@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QWindow::showFullScreen()@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QOpenGLContext::currentContext()@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QSurfaceFormat::QSurfaceFormat()@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QWindow::surfaceType() const@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QTimer::QTimer(QObject*)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QWindow::focusInEvent(QFocusEvent*)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QWindow::geometry() const@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QWindow::setFormat(QSurfaceFormat const&amp;)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QObject::connectNotify(QMetaMethod const&amp;)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QOpenGLContext::swapBuffers(QSurface*)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QObject::customEvent(QEvent*)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QGuiApplication::QGuiApplication(int&amp;, char**, int)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `QObject::QObject(QObject*)@Qt_5'
  ../../../../lib/libmotorcar-compositor.so: undefined reference to `typeinfo for QObject@Qt_5'
  collect2: error: ld returned 1 exit status
  make: *** [Makefile:14: compositor] Error 1
  </code></pre>
  
  <h2>3.7 How I found the Qt5 linking error associated with <code>libmotorcar-compositor.so</code></h2>
  
  <p>The above output led me to the discovery that there is an internal linking error associated with the <code>libmotorcar-compositor</code> library, as evidenced by the following (note the first three lines of the error):</p>
  
  <pre><code>$ cd ~/motorcar/lib
  $ ls
  libmotorcar-compositor.so  libmotorcar-compositor.so.1  libmotorcar-compositor.so.1.0  libmotorcar-compositor.so.1.0.0
  $ ldd libmotorcar-compositor.so
  ./libmotorcar-compositor.so: /opt/qt5/lib/libQt5Core.so.5: version `Qt_5' not found (required by ./libmotorcar-compositor.so)
  ./libmotorcar-compositor.so: /opt/qt5/lib/libQt5Gui.so.5: version `Qt_5_PRIVATE_API' not found (required by ./libmotorcar-compositor.so)
  ./libmotorcar-compositor.so: /opt/qt5/lib/libQt5Gui.so.5: version `Qt_5' not found (required by ./libmotorcar-compositor.so)
      linux-vdso.so.1 (0x00007ffcb60c9000)
      libQt5Widgets.so.5 =&gt; /opt/qt5/lib/libQt5Widgets.so.5 (0x00007f6084efa000)
      libQt5Compositor.so.5 =&gt; /opt/qt5/lib/libQt5Compositor.so.5 (0x00007f6084e1a000)
      libQt5Quick.so.5 =&gt; /opt/qt5/lib/libQt5Quick.so.5 (0x00007f60848f2000)
      libQt5Qml.so.5 =&gt; /opt/qt5/lib/libQt5Qml.so.5 (0x00007f60842dc000)
      libQt5Network.so.5 =&gt; /opt/qt5/lib/libQt5Network.so.5 (0x00007f6084133000)
      libQt5Gui.so.5 =&gt; /opt/qt5/lib/libQt5Gui.so.5 (0x00007f6083a84000)
      libQt5Core.so.5 =&gt; /opt/qt5/lib/libQt5Core.so.5 (0x00007f60834c6000)
      libGL.so.1 =&gt; /usr/lib/libGL.so.1 (0x00007f608322a000)
      libpthread.so.0 =&gt; /usr/lib/libpthread.so.0 (0x00007f608300d000)
      libstdc++.so.6 =&gt; /usr/lib/libstdc++.so.6 (0x00007f6082c85000)
      libm.so.6 =&gt; /usr/lib/libm.so.6 (0x00007f6082981000)
      libgcc_s.so.1 =&gt; /usr/lib/libgcc_s.so.1 (0x00007f608276a000)
      libc.so.6 =&gt; /usr/lib/libc.so.6 (0x00007f60823ca000)
      libgobject-2.0.so.0 =&gt; /usr/lib/libgobject-2.0.so.0 (0x00007f6082178000)
      libglib-2.0.so.0 =&gt; /usr/lib/libglib-2.0.so.0 (0x00007f6081e65000)
      libXext.so.6 =&gt; /usr/lib/libXext.so.6 (0x00007f6081c53000)
      libX11.so.6 =&gt; /usr/lib/libX11.so.6 (0x00007f6081914000)
      libwayland-server.so.0 =&gt; /usr/lib/libwayland-server.so.0 (0x00007f6081701000)
      libxkbcommon.so.0 =&gt; /usr/lib/libxkbcommon.so.0 (0x00007f60814bf000)
      librt.so.1 =&gt; /usr/lib/librt.so.1 (0x00007f60812b7000)
      libz.so.1 =&gt; /usr/lib/libz.so.1 (0x00007f60810a1000)
      libpng16.so.16 =&gt; /usr/lib/libpng16.so.16 (0x00007f6080e6b000)
      libicui18n.so.57 =&gt; /usr/lib/libicui18n.so.57 (0x00007f60809f1000)
      libicuuc.so.57 =&gt; /usr/lib/libicuuc.so.57 (0x00007f6080647000)
      libicudata.so.57 =&gt; /usr/lib/libicudata.so.57 (0x00007f607ebcb000)
      libpcre16.so.0 =&gt; /usr/lib/libpcre16.so.0 (0x00007f607e962000)
      libdl.so.2 =&gt; /usr/lib/libdl.so.2 (0x00007f607e75e000)
      libgthread-2.0.so.0 =&gt; /usr/lib/libgthread-2.0.so.0 (0x00007f607e55c000)
      /usr/lib64/ld-linux-x86-64.so.2 (0x00005591851f1000)
      libexpat.so.1 =&gt; /usr/lib/libexpat.so.1 (0x00007f607e332000)
      libxcb-dri3.so.0 =&gt; /usr/lib/libxcb-dri3.so.0 (0x00007f607e12d000)
      libxcb-present.so.0 =&gt; /usr/lib/libxcb-present.so.0 (0x00007f607df2a000)
      libxcb-sync.so.1 =&gt; /usr/lib/libxcb-sync.so.1 (0x00007f607dd23000)
      libxshmfence.so.1 =&gt; /usr/lib/libxshmfence.so.1 (0x00007f607db20000)
      libglapi.so.0 =&gt; /usr/lib/libglapi.so.0 (0x00007f607d8f1000)
      libXdamage.so.1 =&gt; /usr/lib/libXdamage.so.1 (0x00007f607d6ee000)
      libXfixes.so.3 =&gt; /usr/lib/libXfixes.so.3 (0x00007f607d4e6000)
      libX11-xcb.so.1 =&gt; /usr/lib/libX11-xcb.so.1 (0x00007f607d2e4000)
      libxcb.so.1 =&gt; /usr/lib/libxcb.so.1 (0x00007f607d0bb000)
      libxcb-glx.so.0 =&gt; /usr/lib/libxcb-glx.so.0 (0x00007f607ce9f000)
      libxcb-dri2.so.0 =&gt; /usr/lib/libxcb-dri2.so.0 (0x00007f607cc9a000)
      libXxf86vm.so.1 =&gt; /usr/lib/libXxf86vm.so.1 (0x00007f607ca94000)
      libdrm.so.2 =&gt; /usr/lib/libdrm.so.2 (0x00007f607c882000)
      libffi.so.6 =&gt; /usr/lib/libffi.so.6 (0x00007f607c679000)
      libpcre.so.1 =&gt; /usr/lib/libpcre.so.1 (0x00007f607c406000)
      libXau.so.6 =&gt; /usr/lib/libXau.so.6 (0x00007f607c202000)
      libXdmcp.so.6 =&gt; /usr/lib/libXdmcp.so.6 (0x00007f607bffc000)
  </code></pre>