首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在不同平台上交叉编译qt应用程序

如何在不同平台上交叉编译qt应用程序
EN

Stack Overflow用户
提问于 2009-12-19 12:41:34
回答 3查看 8.4K关注 0票数 9

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

我需要两个版本

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

2)。它在采用Linux Framebuffer和ARM架构的设备上运行

我已经为设备和Qvfb编译了Qt。我可以在两个平台上运行示例,但是如何交叉编译我的应用程序呢?我希望两个输出都放在不同的目录下,也就是说i386的输出放在output-i386平台上,而ARM的输出放在output-ARM目录下。

我使用的是Qt4.6 for Embedded Linux。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-12-19 19:42:31

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

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

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

票数 2
EN

Stack Overflow用户

发布于 2009-12-19 20:25:24

您只需在.pro文件中设置DESTDIR即可。参见the qmake variable reference。您可能还希望调整变量OBJECTS_DIRUI_DIRMOC_DIRRCC_DIR

票数 4
EN

Stack Overflow用户

发布于 2009-12-19 20:09:55

qmake的末尾展示了如何在工作目录中更改this article (您需要先运行make destclean )。这篇文章概述了基本的Qt for embedded Linux环境,只是为了让您大致了解一下。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1931977

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档