如何跨不同平台交叉编译qt应用程序

Sun*_*hah 9 qt cross-platform qt4 cross-compiling

如何在Qt上交叉编译我的应用程序.至于每个项目

我需要两个版本

1).它在Qvfb和i386架构上的计算机上运行

2).它运行在具有Linux Framebuffer和ARM Architecture的设备上

我已经为设备和Qvfb编译了Qt.我可以在两个平台上运行示例,但是如何交叉编译我的应用程序.我希望两个输出都保留在不同的目录中,这意味着i386的输出保留在output-i386平台中,而ARM的输出保留在output-ARM目录中.

我正在使用Qt 4.6 for Embedded Linux.

Sun*_*hah 2

Qt 从 mkspec 文件中获取所有平台特定的详细信息。

使用 qmake 的 -spec 命令行参数指定 mkspec 文件到 qmake 进行交叉编译。

在 mkspec 文件中,有许多定义,您可以通过它们自定义不同平台的编译,例如我可以使用DESTDIR将最终输出文件发送到特定目录,使用OBJECTS_DIR将对象文件发送到特定目录。MOC_DIR将 moc 生成的文件发送到特定目录,UI_DIR将 uic 生成的标头和 cpp 文件发送到特定目录。