Qt交叉编译到arm平台

  • Post author:
  • Post category:其他


从网上下载对应版本的Qt源码

https://download.qt.io/archive/qt/5.9/5.9.3/single/

,我下载的是5.9.3的版本。

解压到ubuntu上

下载使用gcc 4.9.4编译器,并配置环境变量。(尽量选择高版本编译器)

配置Qt相关的编译器,使用linux-arm-gnueabi前缀,

cd qtbase/mkspecs

修改qmake.conf文件,更改编译器为当前使用的编译器,

接下来回到主文件夹下面创建脚本来配置选项及功能,具体配置项功能可通过./configure -help来查看

(移植过来的Qt程序需要使用一些库,需要将对应的-skip注释掉,)

提前安装tslib库,可以参考网上的安装方法,(注意,用的编译器一定要保持一致 )

编写完成后执行脚本,配置完成后make进行编译,编译完成后make install安装。

安装完后会生成一个文件夹(脚本配置的安装路径)

将该文件夹拷贝到我们挂载的文件系统

然后在etc/profile下配置环境变量

要想Qt 程序显示中文,需把中文字库放到配置对应的fonts/目录下。网上下载一个Qt支持的字库就可以。

编译Qt可执行文件

将需要编译的Qt程序源码文件夹放入该文件夹中armqt-5.9.3/bin/

进入Qt程序源码文件夹下直接运行../qmake,生成 Makefile,再执行 make 编译生成可执行文件。

(在qmake生成Makefile时会可能会报一些错误,这些错误是因为我们的Qt应用程序中用到了一些Qt的库,而我们在配置编译的时候没有编译对应的库文件,需要修改先前的配置脚本,取消跳过编译对应的库)

最后将我们编译生成的可执行文件拷贝到开发板上运行即可。



版权声明:本文为nz189701原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。