【发布时间】:2017-10-23 07:07:23
【问题描述】:
上周我收到了全新的 Colibri VF61 和 Toradex 的 Aster 载板。 我按照 Toradex 的指南介绍了如何准备板子以与 qt here 交叉编译。
教程中的一切都很完美,但是我尝试部署我的应用程序并且一切正常,直到我在目标设备上打开可执行文件,因为我收到以下消息:
加载共享库时出错:libQt5PrintSupport.so.5:无法打开共享对象文件:没有这样的文件或目录
我去查看我的目标设备中是否有任何 Qt 文件,但没有,所以我去了我的主机设备中的 sysroot 文件夹并将所有 Qt 文件复制到我的目标设备,(Qt5PrintSupport在那里)但是在我将所有文件复制到与我的 sysroot 中完全相同的位置之后,仍然出现相同的错误。
我复制的文件是:
LibIcal Qt5Core Qt5OpenGLExtensions Qt5Svg PulseAudio Qt5DBus Qt5Positioning Qt5SystemInfo Qt5 Qt5Declarative Qt5PrintSupport Qt5Test Qt53DCore Qt5Designer Qt5PublishSubscribe Qt5UiPlugin Qt53DExtras Qt5Enginio Qt5Qml Qt5Ui工具 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 里面
和:
导入 libexec mkspecs 插件 qml
文件夹到 /usr/lib/qt5
我注意到问题可能是我在 /usr/lib/qt5 中没有“lib”文件夹,但是我不知道如何创建它,因为它不在我的 sysroot 中。
总结:我想通过交叉编译来执行我的应用程序,但是缺少 lib 文件夹,我不知道如何创建或链接它。
【问题讨论】:
-
请注意,不能将 Qt 构建移动到不同的安装路径。无论您在构建系统上使用什么文件夹,都必须是目标上使用的文件夹。
标签: c++ linux qt cross-platform cross-compiling