如何解决用于 Beagle Bone Black 的 Qt 交叉编译
我有一个 Beagle bone black wireless,想使用 ubuntu 18.4 交叉编译 Qt。
使用 debian lqxt(与不同的 debian :9.5,9.9,10.5 一起使用) 以及用于配置 Qt 的不同工具链,例如 Linaro(6.5、7.5、8.3)、来自 Arm Developers 的 arm 工具链 10.2、Bootlin、默认 ubuntu gcc-arm-linux-gnueabihf(我猜它使用 linaro 范围从 5 到 8)没有一个工作!
错误发生在配置步骤
错误:无法编译最小程序。工具链或 QMakeSpec 已损坏。
这是我的配置参数:
./configure -opengl es2 -v -opensource -confirm-license -sysroot [PATH_TO_SYSROOT] -prefix /opt/qt5-arm -platform linux-g++-64 -device linux-beagleboard-g++ -device-option CROSS_COMPILE=[TOOLCHAIN_PATH] -nomake tests -nomake examples -v
所以我的猜测是 sysroot 与工具链不兼容。 最后,我设法使用来自 Debian 存储库的 gcc-8-arm-linux-gnueabihf 交叉编译 QT 5.15.2(下载所有 dep 文件和依赖项,然后安装它们)。所以一切看起来都很好,除了最终程序似乎没有编译Qt 资源文件! 每行代码都按预期工作,但目标设备上没有资源。并且程序以多行错误开始,抱怨 Qpixmap
Qpixmap:: scaled: pixmap 是一个空的 pixmap
知道为什么会这样吗?!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。