gpt4 book ai didi

c++ - 交叉编译qt : Error while loading shared libraries

转载 作者:太空宇宙 更新时间:2023-11-04 12:27:52 29 4
gpt4 key购买 nike

上周我收到了我全新的 Colibri VF61 和 Toradex 的 Aster 载板。我遵循了 Toradex 关于如何准备板以使用 qt 进行交叉编译的指南 here .

教程中的一切都很完美,但是我尝试部署我的应用程序并且一切正常,直到我在目标设备上打开可执行文件,因为我收到以下消息:

error while loading shared libraries: libQt5PrintSupport.so.5: cannot open shared object file: No such file or directory

我去看看我的目标设备中是否有任何 Qt 文件,没有,所以我去了我主机设备中的 sysroot 文件夹,并将所有 Qt 文件复制到我的目标设备,(Qt5PrintSupport在那里)但是在我将所有文件复制到与它们在我的 sysroot 中完全相同的位置之后,相同的错误不断出现。

我复制的文件是:

LibIcal Qt5Core Qt5OpenGLExtensions Qt5Svg PulseAudio Qt5DBus Qt5Positioning Qt5SystemInfo Qt5 Qt5Declarative Qt5PrintSupport Qt5Test Qt53DCore Qt5Designer Qt5PublishSubscribe Qt5UiPlugin Qt53DExtras Qt5Enginio Qt5Qml Qt5UiTools Qt53DInput Qt5Gui Qt5Quick Qt5WebChannel Qt53DLogic Qt5Help Qt5QuickTest Qt5WebKit Qt53DQuick Qt5LinguistTools Qt5QuickWidgets Qt5WebKitWidgets Qt53DQuickExtras Qt5Location Qt5Script Qt5WebSockets Qt53DQuickInput Qt5Multimedia Qt5ScriptTools Qt5Widgets Qt53DQuickRender Qt5MultimediaWidgets Qt5Sensors Qt5X11Extras Qt53DRender Qt5Network Qt5SerialPort Qt5Xml Qt5Bluetooth Qt5Nfc Qt5ServiceFramework Qt5XmlPatterns Qt5Concurrent Qt5OpenGL Qt5Sql libxml2

在/usr/lib/cmake 中

和:

imports libexec mkspecs plugins qml

文件夹到/usr/lib/qt5

我注意到问题可能是我在/usr/lib/qt5 中没有“lib”文件夹,但是我不知道如何创建它,因为它不在我的 sysroot 中。

总结:我想通过交叉编译来执行我的应用程序,但缺少 lib 文件夹,我不知道如何创建或链接它。

最佳答案

库与使用它的应用位于同一路径并不一定意味着您的应用可以找到它。遵循以下方法之一;

  • 将所需的qt库安装到系统的标准lib目录(例如/usr/lib/)
  • 将环境变量 LD_LIBRARY_PATH 设置为您的 qt 库所在的位置。惯例通常是设置一个 bash 脚本然后启动您的应用程序)或
  • 在编译时,将 rpath 变量设置为 qt 库文件夹的位置(gcc 为 -rpath)

关于c++ - 交叉编译qt : Error while loading shared libraries,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44132948/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com