Qt5 链接器错误:未找到版本“Qt_5" [英] Qt5 Linker Error: version `Qt_5' not found

查看:110
本文介绍了Qt5 链接器错误:未找到版本“Qt_5"的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试在 Arch Linux 机器上从头开始构建开源 motorcar 项目.Motorcar 是一个 Linux VR 窗口管理器,可与 Oculus Rift D2K 耳机和 Razer Hydra 控制器一起使用.不过,您不需要这些项目来实际编译此项目.

I am attempting to build the open-source motorcar 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.

问题:我无法在我的机器(Arch Linux)上编译汽车.我遇到了 Qt5 链接错误(解释如下).

The problem: I cannot get motorcar to compile on my machine (Arch Linux). I am suffering from a Qt5 linking error (explained below).

正如 README 所指出的,要建造汽车需要以下先决条件:

As the README indicates, the following prerequisites are needed in order to build motorcar:

  1. Mesa,使用 EGL 和桌面 OpenGL 支持编译.
  2. Cairo,使用 EGL 和桌面 OpenGL 支持编译.
  3. QtWayland 5.5(需要 Qt5.5).
  4. Wayland(Linux 窗口管理器协议).

此外,汽车项目分为以下实际构建目标:

Furthermore, the motorcar project is divided up into the following actual build targets:

  1. libmotorcar-compositor:这是用于支持构建目标之后的实际汽车库.
  2. simple-compositor:这是一个简单的 Wayland 合成器,您可以从控制台启动它.一旦启动(在您的屏幕上,而不是在 VR 耳机中),您就可以在其中启动 3D 窗口程序.
  3. rift-hydra-compositor:这与 simple-compositor 相同,只是它配备了对 Oculus Rift D2K 耳机和 Razer Hydra 控制器的支持.
  4. motorcar-client-demo:这是 client窗口",它旨在运行在 simple-compositor 或 <代码>rift-hydra-compositor.它只是一个旋转的立方体.一旦你启动了 simple-compositor,你应该能够 alt-tab 到控制台并运行 motorcar-client-demo(这将在运行中启动 3D 立方体简单合成器).
  1. libmotorcar-compositor: this is the actual motorcar library used to support the build targets after this one.
  2. simple-compositor: 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.
  3. rift-hydra-compositor: this is the same as the simple-compositor, except it is equipped with support for the Oculus Rift D2K headset and Razer Hydra controllers.
  4. motorcar-client-demo: This is the client "window" which is meant to run in either simple-compositor or the rift-hydra-compositor. It's merely a rotating cube. Once you launch the simple-compositor, you should be able to alt-tab to a console and run motorcar-client-demo (which will launch the 3D cube within the running simple-compositor).

3 我如何尝试构建汽车目标(以及我遇到的错误)

我的系统:带有 nvidia 显卡的 Arch Linux(运行 nvidia 驱动程序).

首先注意汽车项目提供了一个 build.sh 脚本.我试过使用它,但它在我的系统上不起作用.因此,我从源代码编译了所有内容.这是我的做法(导致最终错误).

First note that the motorcar project provides a build.sh 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).

首先我从 台面.从焦油中取出后,我跑了:

First I downloaded mesa-13.0.2.tar.gz from mesa. After removing it from its tar, I ran:

$ ./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

3.2 我是如何建造开罗的

首先,我下载了从 cairo 网站LATEST-cairo-1.14.6>.从焦油中取出后,我跑了:

3.2 How I Built Cairo

First I downloaded LATEST-cairo-1.14.6 linked from cairo's website. After removing it from its tar, I ran:

$ ./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

3.3 我是如何构建 Wayland 的

我只是为此使用了我的包管理器.

3.3 How I Built Wayland

I just used my package manager for this.

$ sudo pacman -S wayland
$ sudo pacman -S weston # in case this is relevant

3.4 我如何构建 qtwayland 和 qt5.5

这里我按照汽车自述文件的说明进行操作:

3.4 How I Built qtwayland and qt5.5

Here I followed the instructions of motorcar's README:

$ 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

3.5 我如何构建 libmotorcar-compositor

$ cd ~
$ git clone https://github.com/evil0sheep/motorcar.git motorcar
$ /opt/qt5/bin/qmake
$ make

3.6 我如何尝试构建 simple-compositor

$ 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<QWaylandCompositor::ExtensionFlag>)'
../../../../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&)@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<QOpenGLShader::ShaderTypeBit>, char const*)@Qt_5'
../../../../lib/libmotorcar-compositor.so: undefined reference to `QPixmap::fromImage(QImage const&, QFlags<Qt::ImageConversionFlag>)@Qt_5'
../../../../lib/libmotorcar-compositor.so: undefined reference to `QOpenGLTexture::QOpenGLTexture(QImage const&, 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&, void*, long*)@Qt_5'
../../../../lib/libmotorcar-compositor.so: undefined reference to `QWindow::setGeometry(QRect const&)@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&, QString const&)'
../../../../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&)@Qt_5'
../../../../lib/libmotorcar-compositor.so: undefined reference to `QCursor::~QCursor()@Qt_5'
../../../../lib/libmotorcar-compositor.so: undefined reference to `QCursor::QCursor(QPixmap const&, 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&)@Qt_5'
../../../../lib/libmotorcar-compositor.so: undefined reference to `QWaylandCompositor::openUrl(QWaylandClient*, QUrl const&)'
../../../../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&)@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&)@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<Qt::ImageConversionFlag>) 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&)@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&)@Qt_5'
../../../../lib/libmotorcar-compositor.so: undefined reference to `QObject::connectNotify(QMetaMethod const&)@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&, 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

3.7 我如何发现与 libmotorcar-compositor.so

相关的 Qt5 链接错误

以上输出使我发现存在与 libmotorcar-compositor 库相关的内部链接错误,如下所示(注意错误的前三行):

3.7 How I found the Qt5 linking error associated with libmotorcar-compositor.so

The above output led me to the discovery that there is an internal linking error associated with the libmotorcar-compositor library, as evidenced by the following (note the first three lines of the error):

$ 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 => /opt/qt5/lib/libQt5Widgets.so.5 (0x00007f6084efa000)
    libQt5Compositor.so.5 => /opt/qt5/lib/libQt5Compositor.so.5 (0x00007f6084e1a000)
    libQt5Quick.so.5 => /opt/qt5/lib/libQt5Quick.so.5 (0x00007f60848f2000)
    libQt5Qml.so.5 => /opt/qt5/lib/libQt5Qml.so.5 (0x00007f60842dc000)
    libQt5Network.so.5 => /opt/qt5/lib/libQt5Network.so.5 (0x00007f6084133000)
    libQt5Gui.so.5 => /opt/qt5/lib/libQt5Gui.so.5 (0x00007f6083a84000)
    libQt5Core.so.5 => /opt/qt5/lib/libQt5Core.so.5 (0x00007f60834c6000)
    libGL.so.1 => /usr/lib/libGL.so.1 (0x00007f608322a000)
    libpthread.so.0 => /usr/lib/libpthread.so.0 (0x00007f608300d000)
    libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007f6082c85000)
    libm.so.6 => /usr/lib/libm.so.6 (0x00007f6082981000)
    libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x00007f608276a000)
    libc.so.6 => /usr/lib/libc.so.6 (0x00007f60823ca000)
    libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0x00007f6082178000)
    libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0x00007f6081e65000)
    libXext.so.6 => /usr/lib/libXext.so.6 (0x00007f6081c53000)
    libX11.so.6 => /usr/lib/libX11.so.6 (0x00007f6081914000)
    libwayland-server.so.0 => /usr/lib/libwayland-server.so.0 (0x00007f6081701000)
    libxkbcommon.so.0 => /usr/lib/libxkbcommon.so.0 (0x00007f60814bf000)
    librt.so.1 => /usr/lib/librt.so.1 (0x00007f60812b7000)
    libz.so.1 => /usr/lib/libz.so.1 (0x00007f60810a1000)
    libpng16.so.16 => /usr/lib/libpng16.so.16 (0x00007f6080e6b000)
    libicui18n.so.57 => /usr/lib/libicui18n.so.57 (0x00007f60809f1000)
    libicuuc.so.57 => /usr/lib/libicuuc.so.57 (0x00007f6080647000)
    libicudata.so.57 => /usr/lib/libicudata.so.57 (0x00007f607ebcb000)
    libpcre16.so.0 => /usr/lib/libpcre16.so.0 (0x00007f607e962000)
    libdl.so.2 => /usr/lib/libdl.so.2 (0x00007f607e75e000)
    libgthread-2.0.so.0 => /usr/lib/libgthread-2.0.so.0 (0x00007f607e55c000)
    /usr/lib64/ld-linux-x86-64.so.2 (0x00005591851f1000)
    libexpat.so.1 => /usr/lib/libexpat.so.1 (0x00007f607e332000)
    libxcb-dri3.so.0 => /usr/lib/libxcb-dri3.so.0 (0x00007f607e12d000)
    libxcb-present.so.0 => /usr/lib/libxcb-present.so.0 (0x00007f607df2a000)
    libxcb-sync.so.1 => /usr/lib/libxcb-sync.so.1 (0x00007f607dd23000)
    libxshmfence.so.1 => /usr/lib/libxshmfence.so.1 (0x00007f607db20000)
    libglapi.so.0 => /usr/lib/libglapi.so.0 (0x00007f607d8f1000)
    libXdamage.so.1 => /usr/lib/libXdamage.so.1 (0x00007f607d6ee000)
    libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0x00007f607d4e6000)
    libX11-xcb.so.1 => /usr/lib/libX11-xcb.so.1 (0x00007f607d2e4000)
    libxcb.so.1 => /usr/lib/libxcb.so.1 (0x00007f607d0bb000)
    libxcb-glx.so.0 => /usr/lib/libxcb-glx.so.0 (0x00007f607ce9f000)
    libxcb-dri2.so.0 => /usr/lib/libxcb-dri2.so.0 (0x00007f607cc9a000)
    libXxf86vm.so.1 => /usr/lib/libXxf86vm.so.1 (0x00007f607ca94000)
    libdrm.so.2 => /usr/lib/libdrm.so.2 (0x00007f607c882000)
    libffi.so.6 => /usr/lib/libffi.so.6 (0x00007f607c679000)
    libpcre.so.1 => /usr/lib/libpcre.so.1 (0x00007f607c406000)
    libXau.so.6 => /usr/lib/libXau.so.6 (0x00007f607c202000)
    libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x00007f607bffc000)

推荐答案

尝试将 Qt 的 bin 目录添加到 PATHlib 目录到LD_LIBRARY_PATH:

Try to add Qt's bin directory to PATH and lib directory to LD_LIBRARY_PATH:

export PATH=/opt/qt5/bin:$PATH
export LD_LIBRARY_PATH=/opt/qt5/lib:$LD_LIBRARY_PATH

我相信您可能已经将您的 shared-object.so 库明确地与 /opt/qt5/lib/libQt5Core.so 相关联,但因为它反过来又取决于其他 Qt 库而找不到它们,您有错误.上述调整可能会解决问题.

I believe you may have linked your shared-object.so library explicitly against /opt/qt5/lib/libQt5Core.so, but as it in turn depends on other Qt libraries and cannot find them, you have an error. Adjustments above might resolve the issue.

另见:

这篇关于Qt5 链接器错误:未找到版本“Qt_5"的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆