【发布时间】:2015-09-16 14:36:17
【问题描述】:
我有一个带有 Arch Linux ARM 发行版的小型 ARM 板。存储库中提供了 ARM Qt 5.5.0 二进制文件。
我想在我的 Ubuntu Trusty x86_64 虚拟机上使用 Qt 为该板交叉编译一个程序。我需要先从源代码交叉编译 Qt,还是有办法重用预构建的 ARM 二进制文件?
我的意思是,当我尝试在 Qt Creator 中设置 Qt 工具包时,它希望我指向 qmake 可执行文件。而且 ARM 可执行文件在我的构建机器上不是可执行。所以看来我需要构建 Qt 才能获得 qmake。但是它带有自己的一组库,我不确定是否可以替换它们。
【问题讨论】:
-
不了解 Arch Linux。也许你最好使用 Debian 和 multi-arch 支持:
-
@yegorich 你的意思是我需要在 ARM 计算机上安装 Debian和在我的构建机器上,然后启用多架构以使用我构建机器上存储库中的预构建 ARM 二进制文件?
-
是的。看看这个project。它描述了 debootstrap 方法,即创建基本 Debian 根文件系统的方法。
-
另一种方法是采用Buildroot。创建根文件系统需要更多时间,但是您可以更灵活地更改它,并且您在主机 Linux 发行版中是独立的,即您可以保留 Arch Linux。它还集成了引导加载程序、内核和您自己的软件构建。
-
为了完整起见,请查看thread。
标签: c++ qt arm qt-creator cross-compiling